равны ли все значения в массиве PHP

199
05 января 2022, 07:00

Есть массив со структурой -

$arrays = array(0 => array('baks' => 5),1 => array('baks' => 8), 2 => array('baks' => 10), 3 => array('baks' => 15));

Он может выглядить как

$arrays = array(0 => array('baks' => 5),1 => array('baks' => 5), 2 => array('baks' => 5), 3 => array('baks' => 5), 4 => array('baks' => 5), 5 => array('baks' => 5));

Как понять пришел ли массив $arrays с равными значениями или нет?

Answer 1

Возможно это подойдет

$arrays = array(0 => array('baks' => 5),1 => array('baks' => 5), 2 => array('baks' => 5), 3 => array('baks' => 5), 4 => array('baks' => 5), 5 => array('baks' => 5));
function check ($array) {
    // здесь от условий задачи, если передан пустой массив или 
    // с одним елементом
    if (count($array) <= 1) return false;
    // тянем первый элемент массива и с ним сравниваем остальные
    $first = array_shift($array);
    foreach($array as $item){
        if ($item != $first) return false;
    }
    return true;
}
var_dump(check($arrays)); // bool true

UPD: без функции

$arrays = array(0 => array('baks' => 5),1 => array('baks' => 5), 2 => array('baks' => 5), 3 => array('baks' => 5), 4 => array('baks' => 5), 5 => array('baks' => 5));
$equal = true;
$first = array_shift($array);
foreach($array as $item) if ($item != $first) $equal = false;
var_dump($equal); // bool true
READ ALSO
Обнаружено нечисловое значение

Обнаружено нечисловое значение

Вроде код правильный, но пишет ошибку

227
Не стабильная работа google капчи

Не стабильная работа google капчи

Установил Google Recaptcha v3

97
Разбиение месяца по неделям в PHP

Разбиение месяца по неделям в PHP

Нужно вывести статистику по неделямДля этого желателен массив с неделями по дням

110
Как получить имя домена из GET запроса на мой сайт

Как получить имя домена из GET запроса на мой сайт

Суть вопроса такова, имеется база данных, в ней таблица с полями: домен, токенКогда с другого сайта выполняется GET запрос к моему скрипту, мне...

69