我有一个需要特定查询值的变量
$ player_id_owner = $ this->播放器 - > fetchAll('从播放器中选择ID 其中name =?',array($ name));
$player_id_owner = ($this->Player->find('all', array(
'fields' => array('id'),
'conditions' => array('Player.name' => '$name')
)));
我尝试了原始查询和cakephp查找,但两者都只返回“数组”
我忘记了什么吗?如何从查询中访问预期结果?感谢答案 0 :(得分:0)
好
'Player.name' => '$name'
是无效的PHP代码,至少不是你尝试做的。 不要将变量转义为字符串:
'Player.name' => $name
通过在调试工具包或视图底部检查生成的查询,您可以很容易地看到它。
如果你只希望在这里输入一个条目,那么很可能你会想要使用find('first', ...)
。
最后但并非最不重要:
你很可能只是缺乏基本的调试技巧。不要回应它,因为它确实是一个阵列。永远不要使用未知变量,因为它们通常都是基本字符串。
使用debug()
查看内部的内容,然后正确回显您看到的内容,例如: echo $player['Player']['name'];
。
请记住,输出上的h()应保证字符串输出:
echo h($player['Player']['name']);
答案 1 :(得分:0)
试试这个
$player_id_owner = $this->Player->find('first', array(
'fields' => array('id'),
'conditions' => array('Player.name' => $name)
));
或尝试(您也可以使用您的变量而不是您的名字)
'conditions' => array('Player.name LIKE' => "%yourname%")
之后你可以用
获取id$player_id_owner['Player']['id']