-
Notifications
You must be signed in to change notification settings - Fork 316
/
autoload.php
36 lines (35 loc) · 1.28 KB
/
autoload.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
// For older (pre-2.7.2) verions of google/apiclient
if (
file_exists(__DIR__ . '/../apiclient/src/Google/Client.php')
&& !class_exists('Google_Client', false)
) {
require_once(__DIR__ . '/../apiclient/src/Google/Client.php');
if (
defined('Google_Client::LIBVER')
&& version_compare(Google_Client::LIBVER, '2.7.2', '<=')
) {
$servicesClassMap = [
'Google\\Client' => 'Google_Client',
'Google\\Service' => 'Google_Service',
'Google\\Service\\Resource' => 'Google_Service_Resource',
'Google\\Model' => 'Google_Model',
'Google\\Collection' => 'Google_Collection',
];
foreach ($servicesClassMap as $alias => $class) {
class_alias($class, $alias);
}
}
}
spl_autoload_register(function ($class) {
if (0 === strpos($class, 'Google_Service_')) {
// Autoload the new class, which will also create an alias for the
// old class by changing underscores to namespaces:
// Google_Service_Speech_Resource_Operations
// => Google\Service\Speech\Resource\Operations
$classExists = class_exists($newClass = str_replace('_', '\\', $class));
if ($classExists) {
return true;
}
}
}, true, true);