我的Zend Service Amazon软件包集成到我的codeigniter框架中,我遇到了一个非常令人沮丧的问题。该库在我的localhost中工作得非常好,但是当我从实际站点尝试它时它不起作用,它给我一个内部服务器错误。为什么会这样?
PHP日志中的错误是:
[2012年11月22日21:29:02] PHP警告:输入中出现意外的字符:/home5/tradejun/public_html/application/controllers/dev.php中的'\'(ASCII = 92)状态= 1第30行 [22-Nov-2012 21:29:02] PHP Parse错误:语法错误,第30行/home5/tradejun/public_html/application/controllers/dev.php中的意外T_STRING
第30行:
$autoloader = new Zend\Loader\StandardAutoloader(array(
这是我的控制器功能:
public function amazon2($isbn) {
set_include_path(get_include_path() . PATH_SEPARATOR . 'application/libraries/Amazon');
require_once 'Zend/Loader/StandardAutoloader.php';
$autoloader = new Zend\Loader\StandardAutoloader(array(
'namespaces' => array(
'Zend' => dirname(__FILE__) . '/Zend',
'ZendRest' => dirname(__FILE__) . '/ZendRest',
'ZendService' => dirname(__FILE__) . '/ZendService',
),
'fallback_autoloader' => true));
$autoloader->register();
$tag = 'colleg-21'; // replace with your Amazon app ID
$appId = '[appid]'; // replace w/ your access key from https://portal.aws.amazon.com/gp/aws/securityCredentials
$secretKey = '[secretkey]';
$query = new ZendService\Amazon\Query($appId, 'UK', $secretKey);
$item = $query->itemLookup($isbn,
array('SearchIndex' => 'Books',
'AssociateTag' => $tag,
'IdType' => 'ISBN',
'ResponseGroup' => 'Large',));
$item->smallImageAddress = $item->SmallImage->Url->getImageAddress();
$item->mediumImageAddress = $item->MediumImage->Url->getImageAddress();
$item->largeImageAddress = $item->LargeImage->Url->getImageAddress();
$data['item'] = $item;
$this->load->view('development/amazon',$data);
}
任何人都可以提供任何建议或可能的解决方案吗?
点
答案 0 :(得分:0)
它必须是旧版本的php - 不支持命名空间。你需要php 5.3来命名空间。你需要升级。
编辑:更正名称空间所需的版本号;只需要5.3,而不是5.4。谢谢,E_p