-1
A
回答
0
你有一个json格式的数组,你需要首先使用json_decode
进行解码。之后循环数组来检查你想要的id。
因此,代码应该是这样的:
$json = '[{"ID":1},{"ID":2}]';
$id = 1;
$data = json_decode($json, true);
foreach($data as $item){
if($item['id'] == $id) {
echo 'it exists';
}
}
+0
json_decode90期望参数1是字符串,数组给定 –
0
迭代数组使用for循环,并使用值作为参数去json_decode
。
$id = 1;
$arr = array('{"ID":1}', '{"ID":2}');
foreach($arr as $val) {
if (in_array($id, json_decode($val, TRUE))) {
echo "id present";
}
}
2
您可以尝试Laravel的Collection::contains方法,例如:
$collection = collect(json_decode($jsonString, true));
if ($collection->contains(1) {
// Exists...
}
此外,您还可以使用键/值对这样的:
if ($collection->contains('ID', 1) {
//...
}
另外,如果你想获得该项目从集合然后你可以尝试where
是这样的:
$id = $collection->where('ID', 1)->first(); // ['ID' => 1]
0
试试这个,如果值是存在的,它会给阵列
的关键$jsondata = '[{"ID":1},{"ID":2}]';
$array = json_decode($jsondata,true);
$key = array_search(1, array_column($array, 'ID'));
0
只是检查如果字符串是JSON数组中,很少计算。
我认为这是更有效的方法。检查结果here。
<?php
$id = 1;
$array = ['{"ID":1}', '{"ID":2}'];
echo in_array(json_encode(["ID" => $id]), $array) ? 'Yes' : 'No';
相关问题
- 1. 检查特定数组键(PHP,MYSQLI)中是否存在变量
- 2. PHP检查变量是否小于数组中的前一项
- 3. 检查变量是否存在于json字符串
- 4. 检查数组是否存在于json中Javascript/jquery
- 5. PHP检查数组键是否存在
- 6. 检查整数是否存在于变量几何序列中
- 7. 如何检查数组中是否存在变量?
- 8. 检查数组中是否存在多次变量?
- 9. 检查数组是否存在于php mongodb中?
- 10. 检查数组中是否存在多于一个相同的变量
- 11. 检查变量是否为数组
- 12. 检查数组的长度是否等于bash中的变量
- 13. 检查mysql数组是否存在于数组中
- 14. 将变量推入函数来检查是否存在 - PHP
- 15. 检查变量是否存在于bash中的for循环中
- 16. 检查变量是否存在。 [奇怪]
- 17. 如何检查变量是否存在?
- 18. 检查会话是否存在于php
- 19. Php - 检查文件中是否存在变量值
- 20. 检查postgresql中是否存在JSON数组中的值
- 21. Ansible:如何检查:db是否存在于角色变量中?
- 22. 我如何检查变量是否存在于Mule 3.2中?
- 23. 检查数组中是否存在值
- 24. 检查数组中是否存在值
- 25. 检查数组中是否存在
- 26. 检查数组中是否存在textbox.text
- 27. 检查变量是否是字符串或数组在Twig中
- 28. 如何检查JSON数组中是否存在元素?
- 29. 检查JSON文件中是否存在数组 - iOS
- 30. PHP检查变量是否存在于返回的所有行中
检查'json_decode($字符串,TRUE);'http://php.net/manual/en/function.json-decode.php – jitendrapurohit
json_decode需要字符串,在这里我有一个数组 –
遍历数组使用循环,并使用该值作为参数json_decode – jitendrapurohit