我对gandi和我的剧本的第一次连接尝试因误导的PEAR问题而爆炸:
# php ganditest.php
PHP Warning: require_once(XML/RPC2/Exception.php): failed to open stream: No such file or directory in /usr/local/share/pear/XML/RPC2/Client.php on line 43
Warning: require_once(XML/RPC2/Exception.php): failed to open stream: No such file or directory in /usr/local/share/pear/XML/RPC2/Client.php on line 43
PHP Fatal error: require_once(): Failed opening required 'XML/RPC2/Exception.php' (include_path='.:/usr/local/bin/') in /usr/local/share/pear/XML/RPC2/Client.php on line 43
Fatal error: require_once(): Failed opening required 'XML/RPC2/Exception.php' (include_path='.:/usr/local/bin/') in /usr/local/share/pear/XML/RPC2/Client.php on line 43
我尝试将它设置为PEAR目录:
# pear config-set bin_dir /usr/local/share/pear
config-set succeeded
和
# php ganditest.php
PHP Warning: require_once(XML/RPC2/Exception.php): failed to open stream: No such file or directory in /usr/local/share/pear/XML/RPC2/Client.php on line 43
Warning: require_once(XML/RPC2/Exception.php): failed to open stream: No such file or directory in /usr/local/share/pear/XML/RPC2/Client.php on line 43
PHP Fatal error: require_once(): Failed opening required 'XML/RPC2/Exception.php' (include_path='.:/usr/local/bin/') in /usr/local/share/pear/XML/RPC2/Client.php on line 43
Fatal error: require_once(): Failed opening required 'XML/RPC2/Exception.php' (include_path='.:/usr/local/bin/') in /usr/local/share/pear/XML/RPC2/Client.php on line 43
<?php
require_once '/usr/local/share/pear/XML/RPC2/Client.php';
$version_api = XML_RPC2_Client::create(
'https://rpc.gandi.net/xmlrpc/',
array( 'prefix' => 'version.', 'sslverify' => True )
);
$apikey = 'mykey';
$result = $version_api->info($apikey);
print_r($result);
?>
如何告诉PhP在正确的文件夹中查找PEAR,以便连接到Gandi?
答案 0 :(得分:0)
您刚设置PEAR将可执行文件(您从命令行执行的文件)安装到/ usr / local / share / pear中,这很可能不在您的$ PATH中: - )
要回答您的问题,您需要设置PHP使用的include_path,以便它可以找到PEAR安装的文件。
例如:
$ cat a.php
<?php
echo get_include_path() , "\n";
set_include_path(get_include_path() . ":/usr/local/share/pear");
echo get_include_path() , "\n";