array
0 =>
array
'point' => string '2'
1 =>
array
'point' => string '4'
2 =>
array
'point' => string '1'
Мне нужно проверить значения "point" в вышеупомянутом массиве, если все значения "point" равны "4", он вернет true, как показано ниже.
array
0 =>
array
'point' => string '4'
1 =>
array
'point' => string '4'
2 =>
array
'point' => string '4'
Вам просто нужно использовать 2 оператора fomr PHP. если и для.
Я использовал следующий скрипт для его проверки (вы можете выбрать один из циклов (for или foreach))
$test = array(array('point' => 4), array('point' => 4));
function checkArrayForPointValue($array, $expectedValue)
{
$ok = true;
for ($i = 0; $i < count($array); $i++) {
if ($array[$i]['point'] != $expectedValue) {
$ok = false;
break;
}
}
// choose one of them
foreach ($array as $element) {
if ($element['point'] != $expectedValue) {
$ok = false;
break;
}
}
return $ok;
}
print(checkArrayForPointValue($test, '4') ? 'yay' : 'not yay');
Просто используйте как
function checkArray($myArray) {
$result = array_unique(array_column($myArray, 'point'));
return (count($result) == 1 && $result[0] == '4') ? "true" : "false";
}
echo checkArray($myArray);
Сравните каждое значение в foreach:
function arrayComparePoint($array) {
$valueCompare = $array[0]['point'];
foreach ($array as $arrayPoint) {
foreach ($arrayPoint as $point) {
if ($valueCompare != $point) {
return false;
}
}
}
return true;
}
function checkArray($myArray) { $result = array_unique(array_column($myArray, 'status_id')); return (count($result) == 1 && $result[0] == '4'); }