为什么在thinkphp model里面model用echo不能输出

怎么访问模型对象里面的属性 - ThinkPHP框架
$model&=&D('wallpapers');
dump($model);object(Model)#9&(20)&{
&&[&_extModel&:&Model&:private]&=&&NULL
&&[&db&:protected]&=&&object(DbMysqli)#5&(18)&{
&&&&[&dbType&:protected]&=&&string(6)&&MYSQLI&
&&&&[&autoFree&:protected]&=&&bool(false)
&&&&[&model&:protected]&=&&string(7)&&_think_&
&&&&[&pconnect&:protected]&=&&bool(false)
&&&&[&queryStr&:protected]&=&&string(30)&&SHOW&COLUMNS&FROM&`wallpapers`&
&&&&[&modelSql&:protected]&=&&array(2)&{
&&&&&&[&admin&]&=&&string(130)&&SELECT&COUNT(id)&AS&tp_count&FROM&`admin`&WHERE&(&`name`&=&'shine'&)&AND&(&`pass`&=&'202cb962ac152d234b70'&)&LIMIT&1&&&
&&&&&&[&wallpapers&]&=&&string(30)&&SHOW&COLUMNS&FROM&`wallpapers`&
&&&&[&lastInsID&:protected]&=&&NULL
&&&&[&numRows&:protected]&=&&int(12)
&&&&[&numCols&:protected]&=&&int(6)
&&&&[&transTimes&:protected]&=&&int(0)
&&&&[&error&:protected]&=&&string(0)&&&
&&&&[&linkID&:protected]&=&&array(1)&{
&&&&&&[0]&=&&object(mysqli)#4&(18)&{
&&&&&&&&[&affected_rows&]&=&&int(12)
&&&&&&&&[&client_info&]&=&&string(6)&&5.5.20&
&&&&&&&&[&client_version&]&=&&int(50520)
&&&&&&&&[&connect_errno&]&=&&int(0)
&&&&&&&&[&connect_error&]&=&&NULL
&&&&&&&&[&errno&]&=&&int(0)
&&&&&&&&[&error&]&=&&string(0)&&&
&&&&&&&&[&field_count&]&=&&int(6)
&&&&&&&&[&host_info&]&=&&string(25)&&Localhost&via&UNIX&socket&
&&&&&&&&[&info&]&=&&NULL
&&&&&&&&[&insert_id&]&=&&int(0)
&&&&&&&&[&server_info&]&=&&string(10)&&5.5.23-cll&
&&&&&&&&[&server_version&]&=&&int(50523)
&&&&&&&&[&stat&]&=&&string(150)&&Uptime:&1319442&&Threads:&2&&Questions:&&&Slow&queries:&411&&Opens:&709669&&Flush&tables:&1&&Open&tables:&64&&Queries&per&second&avg:&117.522&
&&&&&&&&[&sqlstate&]&=&&string(5)&&00000&
&&&&&&&&[&protocol_version&]&=&&int(10)
&&&&&&&&[&thread_id&]&=&&int()
&&&&&&&&[&warning_count&]&=&&int(0)
&&&&[&_linkID&:protected]&=&&object(mysqli)#4&(18)&{
&&&&&&[&affected_rows&]&=&&int(-1)
&&&&&&[&client_info&]&=&&string(6)&&5.5.20&
&&&&&&[&client_version&]&=&&int(50520)
&&&&&&[&connect_errno&]&=&&int(0)
&&&&&&[&connect_error&]&=&&NULL
&&&&&&[&errno&]&=&&int(0)
&&&&&&[&error&]&=&&string(0)&&&
&&&&&&[&field_count&]&=&&int(6)
&&&&&&[&host_info&]&=&&string(25)&&Localhost&via&UNIX&socket&
&&&&&&[&info&]&=&&NULL
&&&&&&[&insert_id&]&=&&int(0)
&&&&&&[&server_info&]&=&&string(10)&&5.5.23-cll&
&&&&&&[&server_version&]&=&&int(50523)
&&&&&&[&stat&]&=&&string(150)&&Uptime:&1319442&&Threads:&2&&Questions:&&&Slow&queries:&411&&Opens:&709669&&Flush&tables:&1&&Open&tables:&64&&Queries&per&second&avg:&117.522&
&&&&&&[&sqlstate&]&=&&string(5)&&00000&
&&&&&&[&protocol_version&]&=&&int(10)
&&&&&&[&thread_id&]&=&&int()
&&&&&&[&warning_count&]&=&&int(0)
&&&&[&queryID&:protected]&=&&object(mysqli_result)#6&(5)&{
&&&&&&[&current_field&]&=&&int(0)
&&&&&&[&field_count&]&=&&int(6)
&&&&&&[&lengths&]&=&&NULL
&&&&&&[&num_rows&]&=&&int(12)
&&&&&&[&type&]&=&&int(0)
&&&&[&connected&:protected]&=&&bool(true)
&&&&[&comparison&:protected]&=&&array(10)&{
&&&&&&[&eq&]&=&&string(1)&&=&
&&&&&&[&neq&]&=&&string(2)&&&&&
&&&&&&[&gt&]&=&&string(1)&&&&
&&&&&&[&egt&]&=&&string(2)&&&=&
&&&&&&[&lt&]&=&&string(1)&&&&
&&&&&&[&elt&]&=&&string(2)&&&=&
&&&&&&[&notlike&]&=&&string(8)&&NOT&LIKE&
&&&&&&[&like&]&=&&string(4)&&LIKE&
&&&&&&[&in&]&=&&string(2)&&IN&
&&&&&&[&notin&]&=&&string(6)&&NOT&IN&
&&&&[&selectSql&:protected]&=&&string(96)&&SELECT%DISTINCT%&%FIELD%&FROM&%TABLE%%JOIN%%WHERE%%GROUP%%HAVING%%ORDER%%LIMIT%&%UNION%%COMMENT%&
&&&&[&bind&:protected]&=&&array(0)&{
&&[&pk&:protected]&=&&string(2)&&id&
&&[&tablePrefix&:protected]&=&&string(0)&&&
&&[&name&:protected]&=&&string(10)&&wallpapers&
&&[&dbName&:protected]&=&&string(0)&&&
&&[&connection&:protected]&=&&string(0)&&&
&&[&tableName&:protected]&=&&string(0)&&&
&&[&trueTableName&:protected]&=&&string(10)&&wallpapers&
&&[&error&:protected]&=&&string(0)&&&
&&[&fields&:protected]&=&&array(15)&{
&&&&[0]&=&&string(2)&&id&
&&&&[1]&=&&string(6)&&device&
&&&&[2]&=&&string(4)&&type&
&&&&[3]&=&&string(8)&&thumburl&
&&&&[4]&=&&string(6)&&picurl&
&&&&[5]&=&&string(7)&&pic_url&
&&&&[6]&=&&string(7)&&content&
&&&&[7]&=&&string(8)&&dateline&
&&&&[8]&=&&string(8)&&lastdigg&
&&&&[9]&=&&string(5)&&diggs&
&&&&[10]&=&&string(7)&&reviews&
&&&&[11]&=&&string(4)&&flag&
&&&&[&_autoinc&]&=&&bool(true)
&&&&[&_pk&]&=&&string(2)&&id&
&&&&[&_type&]&=&&array(12)&{
&&&&&&[&id&]&=&&string(7)&&int(11)&
&&&&&&[&device&]&=&&string(29)&&enum('iPhone','iPad','ipad3')&
&&&&&&[&type&]&=&&string(11)&&varchar(60)&
&&&&&&[&thumburl&]&=&&string(12)&&varchar(255)&
&&&&&&[&picurl&]&=&&string(12)&&varchar(255)&
&&&&&&[&pic_url&]&=&&string(12)&&varchar(255)&
&&&&&&[&content&]&=&&string(4)&&text&
&&&&&&[&dateline&]&=&&string(7)&&int(11)&
&&&&&&[&lastdigg&]&=&&string(7)&&int(11)&
&&&&&&[&diggs&]&=&&string(7)&&int(11)&
&&&&&&[&reviews&]&=&&string(7)&&int(11)&
&&&&&&[&flag&]&=&&string(22)&&enum('pending','open')&
&&[&data&:protected]&=&&array(0)&{
&&[&options&:protected]&=&&array(0)&{
&&[&_validate&:protected]&=&&array(0)&{
&&[&_auto&:protected]&=&&array(0)&{
&&[&_map&:protected]&=&&array(0)&{
&&[&_scope&:protected]&=&&array(0)&{
&&[&autoCheckFields&:protected]&=&&bool(true)
&&[&patchValidate&:protected]&=&&bool(false)
&&[&methods&:protected]&=&&array(13)&{
&&&&[0]&=&&string(5)&&table&
&&&&[1]&=&&string(5)&&order&
&&&&[2]&=&&string(5)&&alias&
&&&&[3]&=&&string(6)&&having&
&&&&[4]&=&&string(5)&&group&
&&&&[5]&=&&string(4)&&lock&
&&&&[6]&=&&string(8)&&distinct&
&&&&[7]&=&&string(4)&&auto&
&&&&[8]&=&&string(6)&&filter&
&&&&[9]&=&&string(8)&&validate&
&&&&[10]&=&&string(6)&&result&
&&&&[11]&=&&string(4)&&bind&
&&&&[12]&=&&string(5)&&token&
}dump($model-&pk);
dump($model-&fields);
积分:5834
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。thinkphp新增字段无法插入到数据库是因为fields字段缓存_echo一声呵呵_新浪博客
thinkphp新增字段无法插入到数据库是因为fields字段缓存
  今天在应用thinkphp框架开发的程序做些二次开发修改, 其中有改动到数据结构,新增了几个字段. 调用
M(‘xxx’)-&add($data) 插入值时,新增的字段数据总是插入不进去,每次都是默认的值,
一直找看是不是什么语句写错了, 找了半天也没出个所以然来. 后来将模型对象打印出来仔细查看,发现-他的 protected :成员变量
$fields 字段信息 中没有我刚才添加的新字段名称. 于是恍然—-缓存了… 清空缓存 . 终于可以正常插入数据了.
  原来TP在配置文件中如果没有关闭字段缓存设置,默认是开启的,只要一运行它就会将数据字段信息缓存到~Runtime/Data/_files
文件夹下,并以数组方式存放在文件中. protected $fields = array(….);
  当然你也可以在模型类里面手动定义数据表字段的名称,可以避免IO加载的效率开销,在模型类里面添加fields属性即可,定义格式如下:
  PHP代码
  class UserModel extends Model{
  protected $fields = array(
  ‘id’,
  ‘username’,
  ‘email’,
  ‘age’,
  ‘_pk’=&’id’,
  ‘_autoinc’=&true
  其中_pk 表示主键字段名称 _autoinc 表示主键是否自动增长类型
  可以通过设置DB_FIELDS_CACHE
参数来关闭字段自动缓存,如果在开发的时候经常变动数据库的结构,而不希望进行数据表的字段缓存,可以在项目配置文件中增加如下配置:
  PHP代码
  ‘DB_FIELDS_CACHE’=&false
  调试模式下面由于考虑到数据结构可能会经常变动,所以默认是关闭字段缓存的。ThinkPHP的默认约定每个数据表的主键名采用统一的id作为标识,并且是自动增长类型的。系统会自动识别当前操作的数据表的字段信息和主键名称,所以即使你的主键不是id,也无需进行额外的设置,系统会自动识别。要在外部获取当前数据对象的主键名称,请使用下面的方法:
  PHP代码
  $pk = $Model-&getPk();
  目前不支持联合主键的自动操作。
echo一声呵呵
博客等级:
博客积分:0
博客访问:68,158
关注人气:0
荣誉徽章:用jq的ajax提交到处理页面后,用echo输出的值不能返回 - ThinkPHP框架
我用json_encode,也不行。 请教大神啊
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。安全检查中...
请打开浏览器的javascript,然后刷新浏览器
< 浏览器安全检查中...
还剩 5 秒&2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2014年11月 PHP大版内专家分月排行榜第三2014年6月 PHP大版内专家分月排行榜第三2014年4月 PHP大版内专家分月排行榜第三2014年2月 PHP大版内专家分月排行榜第三2013年11月 PHP大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。}

我要回帖

更多关于 thinkphp new model 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信