cakephp工作笔记3

2010-3-25  星期4  天气阴
1)controller里的name变量作用
class UsersController extends AppController
{
    var $name = "Users";//这个是用来指定views下的视图文件夹名称
}

model里的name变量作用
class User extends AppModel
{
var $name = "User";//用来被controller直接调用如:$this->User

}

2)<?php echo $content_for_layout; ?>
把布局视图的内容输出
<?php echo $scripts_for_layout; ?> ????

3)解决mysql 脚本插入数据库中文乱码的问题
入脚本时,SET NAMES 'xxx' ,xxx应该和sql脚本文件的实际编码一致,如果你设置的时utf8 ,那么请确认你的sql脚本文件时utf8保存的:脚本编码必须是utf-8编码,另存时设置编码
iconv -f UTF-8 xxx.sql

如果显示正常,那么这一步就OK了

另外注意你的脚本里,有没有给库表设置正确的编码,在create table 语句后面添加ENGINE=InnoDB CHARSET=utf8;如create table weather_infos(id INT(11) NOT NULL auto_increment, WeatherName varchar(50) not null, PRIMARY KEY(id))ENGINE=InnoDB CHARSET=utf8;

总之在mysql自带CLI Client中,在查询和更新数据之前,请先SET NAMES 'utf8' ,utf8为你的终端的编码

5)在控制器中访问没有关联的模型数据
控制器鼠标var $uses = array('User', 'WeatherInfo');//将所有要访问的模型添加在此(包括本身对应的)
如果你不希望在你的控制器中使用模型,通过设置 var $uses = array()实现。这允许你使用控制器而不必关联任何一个模型文件。

6)在视图文件中使用var_dump()输出控制器检索到的数据
<pre>
<?php var_dump($knownusers) ?>
</pre>

7)在控制器中跳转到别的控制器路径
$this->redirect("/config/mapconfig");

你可能感兴趣的:(PHP,工作,mysql,脚本,cakephp)