我正在尝试将Yii中的别名路径设置为我的文件上传目录
testweb
- ...
- protected
- ...
- myupload
所以我把它放在protected/config/main.php中:
Yii::setPathOfAlias('upload_dir', Yii::getPathOfAlias('webroot') . '/myupload');
Run Code Online (Sandbox Code Playgroud)
但是当我回复别名时,我只得到'/ myupload'
echo Yii::getPathOfAlias('upload_dir'); //only returns /myupload
Run Code Online (Sandbox Code Playgroud)
您无法getPathOfAlias()在main.php配置文件中调用,因为路径别名是在构造函数中创建的CApplication.但是当main.php包含它时,构造函数还没有被调用.
配置路径别名的正确方法是使用aliases您的属性main.php.在你的情况下,你可以这样做:
return array(
'aliases' => array(
'upload_dir' => 'webroot.myupload',
),
...
Run Code Online (Sandbox Code Playgroud)
另请注意,您可以(并且应该)使用别名的点表示法.