Как я могу проверить, является ли массив ассоциативным или последовательным в PHP?

| | | | | | | | | | | | | | |
В PHP нет необходимости писать тип переменной перед переменной, потому что она имеет свободный тип. Он принимает тип данных из определяемых пользователем значений, которые в нем хранятся. Массивы в PHP — это тип структуры данных, который позволяет хранить несколько элементов с одинаковым типом данных в одной переменной, тем самым экономя усилия по созданию разных переменных для всех данных.
В PHP существует три основных типа массивов. PHP:
  • Последовательные (индексированные) массивы
  • Ассоциативные массивы
  • Многомерные массивы
Последовательные массивы.Те массивы, которые имеют числовые индексы в отсортированном последовательном порядке (начиная с 0 и заканчивая n-1), называются последовательными или индексированными массивами. PHP по умолчанию использует массив Indexed.
// Пример последовательного массива$arr = array ( "Январь" , "Февраль" , " Март " );
// 1-й элементecho $arr [0]. "" ;
// 2-й элементecho $arr [1]. "" ;
// 3-й элементecho $arr [2]. "" ; ?>
Выход:
январь февраль март 
ассоциативный Массивы . Массивы, которые имеют индексы строкового типа вместо индексов или существуют парами («ключ», «значение»), называются ассоциативными массивами.
// Пример ассоциативного массива$arr1 = массив ( "Месяц1" = > "Январь" , "Месяц2" = > "Февраль" , "Месяц3" = > "Март" ); echo $arr1 [ " Month1 " ]. "" ; echo $arr1 [ "Month2" ]. "" ; echo $arr1 [ "Month3" ]. "" ; ?> Выход:
Январь Февраль Март 
Как проверить, является ли массив PHP ассоциативным или последовательным?
В PHP нет встроенного метода для определения типа массива. Если последовательный массив содержит n элементов, то их индекс находится в диапазоне от 0 до (n-1). Итак, найдите ключевое значение массива и проверьте, существует ли он от 0 до (n-1), тогда он является последовательным, иначе это ассоциативный массив.
// Пример проверки последовательного массива
// Ассоциативный массив$arr1 = массив ( "Месяц1" = > "Январь" , "Месяц2" = > "Февраль" , "Месяц3" = > "Март" );
// Проверяем последовательные ключи массива arr if ( array_keys ( $arr1 )! == диапазон (0, число ( $arr1 ) - 1)) echo "Массив ассоциативен " ; else echo " Массив является последовательным " ; ?>
Выход:
Массив является ассоциативным 
Примечания:
  • ===Возвращает True, если $x и $y равны и относятся к одному типу.
  • ! ==Возвращает True, если $x и $y не равны или относятся к одному типу.
  • ==Возвращает True, если $x и $y равны.
  • ! =Возвращает True, если $x не равно $y.