我有我认为是CakePHP中的普通查询调用 - 它适用于所有结果,但是当一个字段中有特殊字符时,字段将返回空。它不会中断 - 它仍然给我剩余的领域 - 这只是一个空的领域。CakePHP - 查询返回空字段,如果它有一个特殊字符
例子:
$this->paginate = array(
'conditions' => array(
'Item.name != ' => '',
),
);
$data = $this->paginate('Item');
这将返回我的表中的所有项目(包括我想有一个空的名称字段中的一个) - 但是当我尝试名称显示到页面上,它的工作原理除了特殊字符(é)以外的每个项目。我将它改为正常的“e”,显示正常。
即使他们的名字中有特殊字符,我该如何返回结果呢?提前致谢!
什么是表的编码?另外,当您手动运行查询时会发生什么,它会显示出来吗?并通过在其上运行'var_dump()'来检查字段是否实际填充了 – JohnP 2011-04-10 06:22:27
@JohnP - 我不确定编码,但是当我手动运行查询(通过软件或通过常规php)时,它显示正好。 – Dave 2011-04-10 06:34:28
@Dave您需要确认Cake是否在数据上运行任何过滤。运行var_dump()或debug()并查看数据是否实际存在于数组中并且不显示。您可能还想要将数据库的排序规则设置为utf_8以及HTML中的内容类型 – JohnP 2011-04-10 06:40:05