你可以在调用Yii :: createApplication之后和yii :: app() – > run()之前在index.php中执行此操作:
define ('UPLOAD_DIR', Yii::app()->baseUrl . '/images/uploads/');
然后,您可以像使用任何其他PHP常量一样使用它,例如echo UPLOAD_DIR.
编辑:当我在创建应用程序之后和运行之前说过时,我的确意味着(同样,并不是说存在createWebApplication和createApplication,它是前者的更通用版本).
所以,如果你现在有
Yii::createWebApplication(...)->run();
你必须把它拆分成
Yii::createWebApplication(...);
define ('UPLOAD_DIR', Yii::app()->baseUrl . '/images/uploads/');
Yii::app()->run();
另一种选择是将另一个属性添加到您的应用程序类.例如,如果您在protected / components目录中有一个MyApplication类,那么您可以这样做:
class MyApplication extends CWebApplication {
// ...other code...
public function getUploadDir() {
return $this->baseUrl.'/images/uploads/';
}
}
然后,您将以Yii :: app() – > uploadDir的身份访问它.