我有一个非常令人沮丧的问题与我的Zend服务亚马逊软件包集成到我的codeigniter框架.库工作完美的在我的本地主机,但当我尝试从现场它不工作,它给我一个内部服务器错误.为什么会这样呢?
PHP日志中的错误是:
[2012年11月22日21:29:02] PHP警告:输入中有意外字符:“\”(ASCII码=92)状态=1位于/home/tradejun/public_html/application/controllers/dev.php第30行[2012年11月22日21:29:02] PHP分析错误:语法错误,第30行上的/home 5/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);
}
谁能提供任何建议或可能的解决办法?
点数
- 在本地主机上运行良好,但在实时主机服务器上却不行
- 我正在使用ZendService_Amazon-2.0.2.zip
- 代码点火器版本为2.02
1条答案
按热度按时间0md85ypi1#
这一定是旧版本的php -不支持命名空间。你需要php5.3来命名空间。你需要升级。
编辑:更正了命名空间所需的版本号;我只要5.3,不要5.4。谢谢,E_p