< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd>
前提:你已?做好相??定,如果??有的?,??:CakePHP 1.2 ?易安???定
I. CakePHP 目??明:
在?程式之前,先了解CakePHP是如果安排程式的目?。基本上,1.1版和1.2版?有什?差?。
app
cake
docs
index.php
vendors
app: 主要是放你?站的程式???的html??。
cake: CakePHP的核心程式,?有???,也可以到???拆解CakePHP的程式;因?目前CakePHP的?明?不是非常的完整,有??需要用拆解程式的方式?了解如何使用。
docs: ?名思?,就是放一些CakePHP的?明文件。
vendors: 如果你有使用其他open source的套件,可以放在??地方。
app?的目?:
config: 放?定?的目?,可以?考 CakePHP 1.2 ?易安???定 。
controllers: 放controller程式的目?,不懂什?是Controller? ??考:CakePHP?明 - Controller
locale: 放多??言的?息?定?,??也是CakePHP 1.2 的新功能。
models: 放model 程式的目?,不懂什?是Model? ??考:CakePHP?明 - Model
plugins: 放?人?好的CakePHP程式。
tmp: ?名思?,放一些?存?的目?,有 log, cache 等。
vendors: 同上面的vendors。
views: 放?路程式版型的目?。??考:CakePHP?明 - View
webroot: 放????的目??,包含?片, javascript, css等。
?考??: http://book.cakephp.org/view/19/cakephp-file-structure
II. ?始你的第一?程式:home_controller.php
首先在 your_cakephp1.2/app/controller 下?生一??名是 home_controller.php (?何是 程式_controller.php 方式命名??是cakephp的??,?照做!),?容如下:
<?php
class HomeController extends AppController {
public $name = 'Home';
public $uses = null;
// 首?
public function index() {
}// end index
}
?>
在 your_cakephp1.2/app/views 下,?生一?目?是 home,在 your_cakephp1.2/app/view/home/ 下,?生一??名是 index.ctp (?:1.1的副?名是.thtml,1.2是 .ctp)。index.ctp?容如下:
<div>
<?php
echo 'hello world';
?>
</div>
程式完成後,?到 app/config下,修改 routes.php 把??的 Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home')); 改成 Router::connect('/', array('controller' => 'home', 'action' => 'index', 'index')); 下面另外???定,基本上也不需要了,可以把它??解!
完成上面的步?,再重新??你的?站,就可以看到你首?的?容了。不?版型?是很奇怪,主要是因??在的版型外框?是套用cakePHP的版型。?copy一份 your_cakephp1.2/cake/libs/layouts/default.ctp 到 your_cakephp1.2/app/views/layouts下。原本的 default.ctp ?容如下:
<?php
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
<?php __('CakePHP: the rapid development php framework:'); ?>
<?php echo $title_for_layout; ?>
</title>
<?php
echo $html->charset();
echo $html->meta('icon');
echo $html->css('cake.generic');
echo $scripts_for_layout;
?>
</head>
<body>
<div id="container">
<div id="header">
<h1><?php echo $html->link(__('CakePHP: the rapid development php framework', true), 'http://cakephp.org'); ?></h1>
</div>
<div id="content">
<?php
if ($session->check('Message.flash')):
$session->flash();
endif;
?>
<?php echo $content_for_layout; ?>
</div>
<div id="footer">
<?php echo $html->link(
$html->image('cake.power.gif', array('alt'=> __("CakePHP: the rapid development php framework", true), 'border'=>"0")),
'http://www.cakephp.org/',
array('target'=>'_new'), null, false
);
?>
</div>
</div>
<?php echo $cakeDebug; ?>
</body>
</html>
其?index.ctp,可以?成是.php程式,可以有html和php程式?。
Header?的程式?:
<?php __('CakePHP: the rapid development php framework:'); ?> ?一行可以?除,??的title?不能?示不是我??站的?息吧。
<?php echo $title_for_layout; ?> 建?保留,如此一?,每?Controller的action可以自行定???的title。?然如果不需要的?,也可?除,直接填上你的?站title。
echo $html->charset(); 建?保留,?去?取 core.php 的App.encoding?定(??是UTF-8)。
echo $html->meta('icon'); favicon ?定,可以?除,改成自己的
echo $html->css('cake.generic'); css ?定,可以?除,改成自己的。
echo $scripts_for_layout; javascript 程式,可以?除。
Body?的程式?:
除了 <?php echo $content_for_layout; ?> 外,其他都可以替?成自己的?容。<?php echo $content_for_layout; ?>主要是CakePHP?理版型??用到的,也就是?示??的index.ctp?容的地方。另外,<?php echo $cakeDebug; ?> 也建?保留,在??模式(core.php中的 Configure::write('debug', 3))?,??示所有的???容,?改成release模式?(core.php中的 Configure::write('debug', 0)),??是不??示任何?容的!
如果完成上面的步?,已?改?首?了!
原文http://otaku.kigi.tw/2008/03/cakephp-12-cakephp.html
I. CakePHP 目??明:
在?程式之前,先了解CakePHP是如果安排程式的目?。基本上,1.1版和1.2版?有什?差?。
app
cake
docs
index.php
vendors
app: 主要是放你?站的程式???的html??。
cake: CakePHP的核心程式,?有???,也可以到???拆解CakePHP的程式;因?目前CakePHP的?明?不是非常的完整,有??需要用拆解程式的方式?了解如何使用。
docs: ?名思?,就是放一些CakePHP的?明文件。
vendors: 如果你有使用其他open source的套件,可以放在??地方。
app?的目?:
config: 放?定?的目?,可以?考 CakePHP 1.2 ?易安???定 。
controllers: 放controller程式的目?,不懂什?是Controller? ??考:CakePHP?明 - Controller
locale: 放多??言的?息?定?,??也是CakePHP 1.2 的新功能。
models: 放model 程式的目?,不懂什?是Model? ??考:CakePHP?明 - Model
plugins: 放?人?好的CakePHP程式。
tmp: ?名思?,放一些?存?的目?,有 log, cache 等。
vendors: 同上面的vendors。
views: 放?路程式版型的目?。??考:CakePHP?明 - View
webroot: 放????的目??,包含?片, javascript, css等。
?考??: http://book.cakephp.org/view/19/cakephp-file-structure
II. ?始你的第一?程式:home_controller.php
首先在 your_cakephp1.2/app/controller 下?生一??名是 home_controller.php (?何是 程式_controller.php 方式命名??是cakephp的??,?照做!),?容如下:
<?php
class HomeController extends AppController {
public $name = 'Home';
public $uses = null;
// 首?
public function index() {
}// end index
}
?>
在 your_cakephp1.2/app/views 下,?生一?目?是 home,在 your_cakephp1.2/app/view/home/ 下,?生一??名是 index.ctp (?:1.1的副?名是.thtml,1.2是 .ctp)。index.ctp?容如下:
<div>
<?php
echo 'hello world';
?>
</div>
程式完成後,?到 app/config下,修改 routes.php 把??的 Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home')); 改成 Router::connect('/', array('controller' => 'home', 'action' => 'index', 'index')); 下面另外???定,基本上也不需要了,可以把它??解!
完成上面的步?,再重新??你的?站,就可以看到你首?的?容了。不?版型?是很奇怪,主要是因??在的版型外框?是套用cakePHP的版型。?copy一份 your_cakephp1.2/cake/libs/layouts/default.ctp 到 your_cakephp1.2/app/views/layouts下。原本的 default.ctp ?容如下:
<?php
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
<?php __('CakePHP: the rapid development php framework:'); ?>
<?php echo $title_for_layout; ?>
</title>
<?php
echo $html->charset();
echo $html->meta('icon');
echo $html->css('cake.generic');
echo $scripts_for_layout;
?>
</head>
<body>
<div id="container">
<div id="header">
<h1><?php echo $html->link(__('CakePHP: the rapid development php framework', true), 'http://cakephp.org'); ?></h1>
</div>
<div id="content">
<?php
if ($session->check('Message.flash')):
$session->flash();
endif;
?>
<?php echo $content_for_layout; ?>
</div>
<div id="footer">
<?php echo $html->link(
$html->image('cake.power.gif', array('alt'=> __("CakePHP: the rapid development php framework", true), 'border'=>"0")),
'http://www.cakephp.org/',
array('target'=>'_new'), null, false
);
?>
</div>
</div>
<?php echo $cakeDebug; ?>
</body>
</html>
其?index.ctp,可以?成是.php程式,可以有html和php程式?。
Header?的程式?:
<?php __('CakePHP: the rapid development php framework:'); ?> ?一行可以?除,??的title?不能?示不是我??站的?息吧。
<?php echo $title_for_layout; ?> 建?保留,如此一?,每?Controller的action可以自行定???的title。?然如果不需要的?,也可?除,直接填上你的?站title。
echo $html->charset(); 建?保留,?去?取 core.php 的App.encoding?定(??是UTF-8)。
echo $html->meta('icon'); favicon ?定,可以?除,改成自己的
echo $html->css('cake.generic'); css ?定,可以?除,改成自己的。
echo $scripts_for_layout; javascript 程式,可以?除。
Body?的程式?:
除了 <?php echo $content_for_layout; ?> 外,其他都可以替?成自己的?容。<?php echo $content_for_layout; ?>主要是CakePHP?理版型??用到的,也就是?示??的index.ctp?容的地方。另外,<?php echo $cakeDebug; ?> 也建?保留,在??模式(core.php中的 Configure::write('debug', 3))?,??示所有的???容,?改成release模式?(core.php中的 Configure::write('debug', 0)),??是不??示任何?容的!
如果完成上面的步?,已?改?首?了!
原文http://otaku.kigi.tw/2008/03/cakephp-12-cakephp.html