Google API autoload.php липсва

Никога преди не съм използвал приложния програмен интерфейс (API) на Goodle и сега се опитвам да намокря краката си, като влизам в календара на Google чрез приложния програмен интерфейс (API).

Изтеглих google-api-php-client-master.zip, извлякох директорията .../src/Google и я копирах на моя уеб сървър (хостван от трета страна, което означава, че не мога да инсталирам нищо). Според примерите, с които моят код трябва да започне

<?php
require_once "Google/Client.php";
require_once "Google/Service/Calendar.php";
....

но Client.php извежда грешка:

Фатална грешка: require_once(): Изисква се неуспешно отваряне '' (include_path='.:/usr/lib/php5.4') в /homepages/39/d396519017/htdocs/VC2/Google/Client.php онлайн 18

Client.php-Ред 18 е този ред require_once realpath(dirname(__FILE__) . '/../../autoload.php');

Но не мога да намеря autoload.php никъде. Какво ми липсва?

Благодаря!


person Stefan    schedule 17.11.2014    source източник
comment
файлът autoload.php е в основната директория, а не в base/src/Google   -  person user3338098    schedule 09.03.2015
comment
вземете v1-master файла е там github.com/google/ google-api-php-client/tree/v1-master   -  person DaImTo    schedule 02.11.2015


Отговори (1)


Това е autoload.php файлът, който сте търся.

Много по-добре (и по-лесно) е да не се притеснявате за зареждането на всеки клас файл поотделно и включването на този autoload.php файл в горната част на примерите, с които ще започнете да работите! Уверете се, че сте поставили файла в папката, която съдържа директорията src.

Можете също да следвате документацията за инсталиране и да зададете папката src в вашият път за включване, използвайки:

set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/google-api-php-client/src');

Когато правите някое от тези неща, вместо това трябва да използвате изрази use, за да включите класовете, от които се нуждаете.

АКТУАЛИЗАЦИЯ: Google премина към чисто използване на Composer в неговите най-модерни версии съгласно това проблем. Трябва да инсталирате Composer и да стартирате composer require "google/apiclient:~2.0@dev", за да получите файла autoload.php, от който се нуждаете, или да използвате маркер v1.x.x в репото. Актуализирах връзката autoload.php до най-новия таг v1.

person sjagr    schedule 18.11.2014
comment
Благодаря, оценявам много! - person Stefan; 21.11.2014
comment
@Stefan Няма проблем! Ако този отговор ви е помогнал, би било чудесно да поставите отметка в сивата отметка точно под стрелките нагоре/надолу за този отговор. - person sjagr; 21.11.2014
comment
Съжалявам, че го пропуснах... Аз съм нов в stackoverflow, все още трябва да се ориентирам. - person Stefan; 22.11.2014
comment
@sjagr просто да направи use не работи. Трябва да има пространство от имена в оператора use, но не знам какво е пространството от имена за API на Google - person mightyspaj3; 07.07.2015
comment
@mightyspaj3 Това беше заключение. Това е доста лесно с PSR конвенциите, просто използвате структурата на папка/файл в повечето случаи. За примера на OP, use Google\Client; и use Google\Service\Calendar; биха работили и двете (забележете как това е точно като require изразите в техния въпрос). В случая на файла autoload.php, който споменавам в моя отговор, точно така се разрешава пространството от имена (чрез папки). - person sjagr; 07.07.2015
comment
Файлът липсва може ли някой да ми даде връзка към файла autoload.php? - person Prafulla Kumar Sahu; 02.11.2015
comment
@PrafullaKumarSahu Актуализира отговора ми. - person sjagr; 02.11.2015
comment
@sjagr съжалявам, но вече е остарял, може да има нещо друго, което трябва да направя. имам Deprecated: google-api-php-client's autoloader was moved to src/Google/autoload.php in 1.1.3. This redirect will be removed in 1.2. Please adjust your code to use the new location. in E:\work\www\analytica\google-api-php-client\src\Google\autoload.php on line 25 - person Prafulla Kumar Sahu; 02.11.2015
comment
Дали е само повече или Google оставя много стари и неактуални документи наоколо дори след като пусне нови неща? Свързвате се към developers.google.com/api-client-library/php /start/installation, което предполага използването на google/apiclient: 1.0.*@beta, докато най-новата версия е 2.+ нещо. - person Jonny; 12.01.2016
comment
@Jonny Това е нарочно, тъй като версиите 2.x са само кандидати за освобождаване към момента на писане на този коментар. Вижте огромна бележка за README. - person sjagr; 12.01.2016