Nginx上的Yii框架 - 页面无法加载

时间:2012-10-03 13:54:16

标签: php mysql nginx yii

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

在这个目录中,我有一些默认文件,例如yii的index.phpindex-test.php以及基本文件夹,例如protectedthemescssimages。我也有自己的文件; phpinfo.php打印phpinfo()getAttribute.php以打印mysqlhistory中的某些列。我点击http://localhost/phpinfo.php时能够显示phpinfo,但我无法显示getAttribute.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 ?>

此代码有问题吗?

1 个答案:

答案 0 :(得分: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();