CakePHP debug() 不起作用,但 Debugger::dump() 很好

标签 cakephp

从 PHP4 和 Cake 1.3 开始,我一直在使用 debug($data);在 CakePHP 中调试诸如模型输出之类的东西。

但是,自从升级到 PHP5.4 后,我注意到 debug($data)似乎并不总是有效。比如今天我做了一个直白的$data = $this->Model->find('all');以及 debug($data); 的内容似乎是空的。没有错误,只是在 HTML 输出中引用了我调用调试和行号然后没有调试输出的事实。

但是,如果我运行 Debugger::dump($data);在完全相同的 find 上,它可以工作 find 并且我看到了整个输出。

似乎只有在 $data 时才会发生有大量数据(比如 100 多条记录),但我在 PHP5.4 之前使用过这种大小的数据集,从来没有问题,也没有错误,内联或 apache/php 日志表明有任何内存问题,我将调试设置为 3。

有谁知道这是为什么?我显然可以开始使用 Debugger::dump($data);很容易,但每次都需要尝试一些额外的东西,我想知道为什么我不能只使用 deubg();了。

最佳答案

db 记录中的非 utf8 编码数据可能会发生这种情况 - 如果应用程序的其余部分是 UTF-8。debug()然后将只输出“无”。 var_dump() , print_r()不过,其他 php 内部方法仍应打印输出。

您通常可以使用 iconv() 等将它们重新编码为 utf8。

关于CakePHP debug() 不起作用,但 Debugger::dump() 很好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14433774/

相关文章:

php - CakePHP 路由中的字符串替换

cakephp - 使用 CakePHP 模型关联从多个表中检索值

css - 单选按钮和标签 Cakephp 之间的空间

php - 如何从 url 将数据插入数据库

node.js - 在centos 6.4和nginx上将cakephp 2.4与redis连接

php - 在站点级别定义 cakephp inputDefaults 的方法

cakephp - symfony vs cakephp

CakePHP 2.2.3 FormHelper 在使用分钟间隔和默认分钟值时无法设置默认子午线

CakePHP 3.0 无法保存 hasMany 关联数据

javascript - cakephp 3 日期输入和数据库问题