需要获取所有年龄键并统计大于 50 的数量。给定数据
$data = '{"data":"key=IAfpK, age=58, key=WNVdi, age=64, key=jp9zt, age=47"}';
输出应为 2,因为有 2 个年龄大于 50
这就是我正在尝试的
$array = json_decode($data, true);
$strArray = explode(',', $array['data']);
$temp1 = array();
for($i=0; $i < count($strArray); $i++){
$key_value = explode('=', $strArray[$i]);
$temp1[$i][$key_value[0]] = $key_value[1];
}
print "<pre>";
print_r($temp1);
print "</pre>";
输出如下
Array
(
[0] => Array
(
[key] => IAfpK
)
[1] => Array
(
[ age] => 58
)
[2] => Array
(
[ key] => WNVdi
)
[3] => Array
(
[ age] => 64
)
[4] => Array
(
[ key] => jp9zt
)
[5] => Array
(
[ age] => 47
)
)
需要获取数组中的所有年龄进行比较。
最佳答案
如果您的数据确实是这样的半结构化数据并且不是太大,并且您想保留键,我认为这是 array_shift
减少数组的一个很好的例子,直到它已耗尽:
$data = '{"data":"key=IAfpK, age=58, key=WNVdi, age=64, key=jp9zt, age=47"}';
$array = json_decode($data, true);
$strArray = explode(',', $array['data']);
$clean = [];
while(count($strArray) >= 2){
$key = explode('=', array_shift($strArray))[1];
$age = explode('=', array_shift($strArray))[1];
$clean[$key] = (int)$age;
}
var_dump($clean);
您应该希望能够添加测试年龄所需的任何逻辑。
关于php - php中如何获取大于50岁的年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74873024/