array_merge() [function.array-merge]: Argument #1 kein array
Ich versuche, mit Google-API-PHP-Client und seine Basis-Klasse wirft folgenden Fehler:
Severity: Warning
Message: array_merge() [function.array-merge]: Argument #1 is not an array
Filename: libraries/Google_Client.php
Line Number: 107
Code herum wie 107 ist so etwas wie:
public function __construct($config = array()) {
global $apiConfig;
$apiConfig = array_merge($apiConfig, $config);
self::$cache = new $apiConfig['cacheClass']();
self::$auth = new $apiConfig['authClass']();
self::$io = new $apiConfig['ioClass']();
}
Ich verstehe, dass global $apiConfig
ist nicht initialisiert array, das ist der Grund, warum array_merge wirft Fehler. Aber wenn ich es ändern zu global $apiConfig = array();
, habe einen anderen Fehler Parse error: syntax error, unexpected '=', expecting ',' or ';' in C:\Softwares\xampp\htdocs\testsaav\application\libraries\Google_Client.php on line 106
Ich bin mit Codeigniter 2.3 mit XAMPP hat PHP 5.3
Du musst angemeldet sein, um einen Kommentar abzugeben.
Initialisieren Sie das array in deiner Funktion (falls erforderlich)
Überprüfen Sie Ihre server-logs und sehen, ob es ein Fehler mit Bezug auf die require_once('config.php') in Google_Client.php (Wenn die Datei nicht gefunden wird, das Skript sollte beendet haben).
Wenn Sie Ihre require_once('Google_Client.php') der folgende code ausgeführt wird, die Datei. Nachdem Sie Ihr verlangen, $apiConfig sollte sichtbar sein, um Ihr Skript.
Beachten Sie, dass Sie sich nicht berühren config.php. Wenn Sie außer Kraft setzen müssen, etwas gibt, die Sie erstellen local_config.php.
Aus meinem system mit PHP 5.3 habe ich dieses Skript. Das script wie unten abgebildet wirft keine Fehler. Lösche die $apiConfig repliziert Ihre Fehler.