我想在另一个开源项目中使用Yii函数(moodle,joomla,......)所以我可以从Yii强大的模型中受益。 我将以下代码放在其中一个文件中( ROOT / course / edit.php ):
$yii = dirname(__FILE__) . '/../mws/framework/yii.php';
$config = dirname(__FILE__) . '/../mws/protected/config/main.php';
defined('YII_DEBUG') or define('YII_DEBUG', TRUE);
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL', 3);
require_once($yii);
Yii::createWebApplication($config);
但我得到以下错误:
PHP警告
包含(edit.php.php)[function.include]:无法打开流: 没有这样的文件或目录
D:\ WAMP \ www \ millms \ mws \ framework \ YiiBase.php(427)
{
416 include($ classFile);
417
if(YII_DEBUG&& basename(realpath($ classFile))!== $ className。'。php')
418扔新 CException(Yii :: t('yii','类名“{class}”与类不匹配 文件“{file}”。',array(
419
'{class}'=> $ className,
420
'{file}'=> $ classFile,
421)));
422休息;
423
}
424}
425}
426
else
427 include($ className。'。php');
428
} 429 else // PHP 5.3中带有命名空间的类名
430 {
431
$命名空间= str_replace函数( '\',LTRIM($的className, '\') '');
432
if(($ path = self :: getPathOfAlias($ namespace))!== false)
433
包括:($路径。 'PHP。');
434其他
435
返回false;
436}
437回归 class_exists($ className,false)|| interface_exists($类名,FALSE);
438}
439 return true;
堆栈跟踪
#0
+
D:\ WAMP \ www \ millms \ mws \ framework \ YiiBase.php(427): YiiBase :: autoload()
#1
unknown(0): YiiBase :: autoload(“edit.php”)
#2
unknown(0): spl_autoload_call(“edit.php”)
#3
-
D:\ WAMP \ www \ millms \ lib \ formslib.php(831):is_a(“edit.php”, “moodle_url”)
826 static $ formcounter = 1;
827
828 HTML_Common :: HTML_Common($ attributes);
829
$ target = empty($ target)? array():array('target'=> $ target);
830 $ this-> _formName = $ formName;
831如果 (is_a($ action,'moodle_url')){
832 $ this-> _pageparams = $ action-> hidden_params_out();
833 $ action = $ action-> out(true);
834}否则{
835 $ this-> _pageparams ='';
836}
#4
-
d:\ WAMP \ WWW \ millms \ lib中\ formslib.php(115): MoodleQuickForm-> MoodleQuickForm(“course_edit_form”,“post”, “edit.php”,“”,......)
110 $ action = strip_querystring(qualified_me());
111}
112
113 $ this-> _formname = get_class($ this); //'_form'后缀按顺序保存 以防止形式id和其他元件的碰撞 $ this-> _customdata = $ customdata;
115 $ this-> _form =&新 MoodleQuickForm($ this-> _formname,$ method,$ action,$ target, $属性);
116 if(!$ editable){
117
$这 - > _form-> hardFreeze();
118}
119
$ this-> set_upload_manager(new upload_manager());
120
#5
- D:\ WAMP \ www \ millms \ course \ edit.php(448): moodleform-> moodleform(“edit.php”,数组(“course”=> null,“category” => stdClass))
443}
444}
445
446
447 ///首先创建表格
448 $ editform = new course_edit_form('edit.php',compact('course','category'));
449 //如果课程已经存在,则覆盖默认值 (!empty($ course)){
451 $ course-> enrolpassword = $课程 - >密码; //我们需要一些其他的密码字段名称 MDL-9929
452 $ editform-> set_data($ course);
453}
如何创建原始Yii应用程序对象?