1.讲framework复制到项目目录下,win7系统下,在未配置PHP为系统环境变量时,需要修改yiic.bat文件:
利用yiic.bat创建项目:D:ServerApachehtdocs 507framework>yiic webapp ../shop,表示在上级目录建立项目shop
方法一: 在执行yiic webapp命令时,就报以下错误了: ‘"php.exe"’ 不是内部或外部命令,也不是可运行的程序或批处理文件。
这个事yiic批处理程序找不到php.exe引起的
方法一、修改yiic.bat文件
打开yii安装目录d:/www/yii/framework/yiic.bat,yiic.bat有记事本打开有如下一行:
if "%PHP_COMMAND%" == "" set PHP_COMMAND=php.exe
由于我的WAMP安装时没有将php.exe加入到Windows环境变量中,难怪yiic找不到。
这样也只需要将php.exe的绝对路径赋给PHP_COMMAND即可。如在我这环境下是这样设置的:
if "%PHP_COMMAND%" == "" set PHP_COMMAND=D:wampphpphp.exe
方法二:
配置win7环境变量,右键我的电脑,属性-> 高级系统设置->高级->环境变量-> 选择path这个添加
配置win7环境变量,右键我的电脑,属性-> 高级系统设置->高级->环境变量-> 选择path这个添加
d:serverapachehtdocs 507framework;d:serverphp;
将framework和php.exe的文件夹路劲都指向
2.YII引用自己配置的常量文件:
2.1自己的常量文件放在项目的protected->config这个目录下,比如新建mydefine.php文件
2.2然后,在项目的入口文件index.php中引用自己的常量文件路路径:
注意:
写在require_once($yii);这个上面,引用:
requrie_once(dirname(__FILE__).'/protected/config/mydefine.php');其中mydefine.php文件中,写法:
//设置系统常量
define("SITE_URL","http://localhost/myii/"); 表示自己项目的根目录
define("CSS_URL",SITE_URL."assets/css/"); 表示将自己的CSS文件的路径,放在assets这个目录下
define("IMAGE_URL",SITE_URL."assets/img/");表示所有的项目图片路劲,放在Assets这个目录下
define("JS_URL",SITE_URL."assets/js/");表示所有JS路劲,放在assets这个目录下
3.YII路由功能:http://localhost/myyii/index.php?r=index/login
根网站 http://localhost/myyii/index.php
控制器:r=index
视图:login
4.YII的MVC控制器,视图对应关系:
在protected目录下:controllers下放控制器,views下放视图文件:一个A控制器对应 views下的一个文件夹A
控制器下的方法对A中的一个页面
控制器类统一继承Controller,比如
class IndexController extends Controller{
function actionLogin(){
$this->renderPartial("login");
}
}
actionLogin对应控制login.php文件
//设置系统常量
define("SITE_URL","http://localhost/myii/"); 表示自己项目的根目录
define("CSS_URL",SITE_URL."assets/css/"); 表示将自己的CSS文件的路径,放在assets这个目录下
define("IMAGE_URL",SITE_URL."assets/img/");表示所有的项目图片路劲,放在Assets这个目录下
define("JS_URL",SITE_URL."assets/js/");表示所有JS路劲,放在assets这个目录下
3.YII路由功能:http://localhost/myyii/index.php?r=index/login
根网站 http://localhost/myyii/index.php
控制器:r=index
视图:login
4.YII的MVC控制器,视图对应关系:
在protected目录下:controllers下放控制器,views下放视图文件:一个A控制器对应 views下的一个文件夹A
控制器下的方法对A中的一个页面
控制器类统一继承Controller,比如
class IndexController extends Controller{
function actionLogin(){
$this->renderPartial("login");
}
}
actionLogin对应控制login.php文件