当前位置:Gxlcms > PHP教程 > windows下cakephp的设立各工程

windows下cakephp的设立各工程

时间:2021-07-01 10:21:17 帮助过:22人阅读

windows下cakephp的设置各工程

http://book.cakephp.org/2.0/zh/installation/advanced-installation.html

?

这个url里面说的很明白,但是下面的说明是以linux为例子进行说明的,在win里要稍微注意以下

写道


CakePHP 核心类库,位于 /lib/Cake 目录。
应用程序的代码,位于 /app 目录。
应用程序的 webroot,通常位于 /app/webroot 目录。

有三个常量需要修改: ROOT 、 APP_DIR 和 CAKE_CORE_INCLUDE_PATH。

ROOT 应当设置为包含你的 app 文件夹的目录路径。
APP_DIR 应当设置为 app 目录的目录名称(译注:即不包含前面的路径)。
CAKE_CORE_INCLUDE_PATH 应当设置为 CakePHP 类库目录的路径。

?

譬如?

写道

if (!defined('ROOT')) {
define('ROOT', dirname(dirname(dirname(__FILE__))));
}

?

意味着root的路径是此文件的父 父 父 文件夹

?

实际情况下,我的index.php是

C:\USBWebserverv8.5\root\myRootCakephp/index.php

设置的就是,意味着是 父 父文件夹

?

写道

if (!defined('ROOT')) {
define('ROOT', dirname(dirname(__FILE__)));
}

?

同时,我的app和cake放在了

C:\USBWebserverv8.5\root\cakephp\app

C:\USBWebserverv8.5\root\cakephp\lib

?

写道

if (!defined('APP_DIR')) {
define('APP_DIR', DS . 'cakephp' . DS . 'app' );
}

define('CAKE_CORE_INCLUDE_PATH', ROOT . DS .'cakephp'. DS . 'lib');

?

app和lib在同样的路径下,为什么设置的时候,一个加了root,一个没加呢?

?

在app上加了root后,会出现

Warning: include(C:\USBWebserverv8.5\root\C:\USBWebserverv8.5\root\cakephp\app\Config\core.php) [function.include]: failed to open stream: Invalid argument inC:\USBWebserverv8.5\root\cakephp\lib\Cake\Core\Configure.php?on line?72

?

里面有2个c盘符,没办法,只能去掉

?

而如果lib上没加root的话

?

Warning: include(\cakephp\lib\Cake\bootstrap.php) [function.include]: failed to open stream: No such file or directory in?C:\USBWebserverv8.5\root\myRootCakephp\index.php?on line?97

?

会直接认成类似于linux的路径。win自然认不出来

?

所以说,调来调去的结果,只能是上面这个样子,当然,这也说明,root,lib,app,是可以完全分开的,完全符合cakephp的说明。linux上可能会比较容易点。

?

?

人气教程排行