0

我正在尝试合作NginxYii. 我已将nginx root目录设置yii webapp为 -yiic webapp /usr/share/nginx/app

在这个目录中,我有一些默认文件,如 yii's index.phpindex-test.php以及基本文件夹,如protected、和. 我也有自己的文件;打印和打印表中的一些列。当我点击时,我能够显示 phpinfo,但我无法显示- themescssimagesphpinfo.phpphpinfo()getAttribute.phpmysqlhistoryhttp://localhost/phpinfo.phpgetAttribute.php

#getAttribute.php
<?php
public function attributeLabels() {
return array(
    Yii::t('app','model.history.sfExternalfield')=>array(
            'External Field'=>Yii::t('app','model.history.sfExternalfield'),
            'Delivery Status'=>Yii::t('app','model.history.deliveryStatus'),
    )
);
}
?>
<html>
<body><?php
print_r(attributeLabels()); 
?></body>
</html>
<?php ?>

这段代码有问题吗?

4

1 回答 1

1

代码有两个问题:

  1. 正如我在评论中提到的,没有类就不能拥有public关键字,因此您必须先将其删除。

  2. 其次,由于该文件不是通过 index.php 访问,而是直接访问,这意味着框架尚未加载/初始化。因此,您还没有访问该Yii课程的权限。为此,您必须包含 Yii 类,有点像这样:

    $yii='path/to/framework/yii.php';
    require_once($yii);
    // now Yii is available and you can call Yii::t();
    
于 2012-10-04T06:27:51.407 回答