比较Json编码数组中的每个值

时间:2011-10-06 09:37:40

标签: php arrays codeigniter json

如何比较插入数据库的内容json_encode中的每一个与字符串作为没有使用循环的速记代码? (此值是使用json_encode插入数据库的复选框)

示例

$json_encode = ["how", "are", "hello", "what"];

echo ($json_encode == 'hello') ? 'It is true' :'';

2 个答案:

答案 0 :(得分:0)

尝试in_array()功能:

$json_encode = ["how", "are", "hello", "what"];

echo ( in_array('hello', $json_encode) ? 'It is true' :'' );

答案 1 :(得分:0)

代码是一种“回合”的做法,但这应该可以解决问题:

$json_encode = '["how", "are", "hello", "what"]';    
echo ( in_array('hello', json_decode($json_encode)) ? 'It is true' :'' );

您的初始$ json_encode未正确设置为正确的JSON字符串,并且需要解码以便稍后使用数组检查功能。

更好的方法可能是:

$json_string = json_encode(array("how", "are", "hello", "what"));
echo ( in_array('hello', json_decode($json_string )) ? 'It is true' :'' );