Intereting Posts
сортировка значения массива без использования встроенных php, таких как sort () и т. д. Как получить определенное значение из моей базы данных с помощью PHP как настроить веб-сервер xampp для разных корневых каталогов Как вызвать родительскую функцию из экземпляра дочернего элемента? Заблокированный запятой множественный автозаполнение в одном поле Что такое cookie сеанса Проблемы с PHP-переменными в javascript Закрытие тегов оператора PHP arrow Прямая передача файла обновления PHP: Является ли mysql_real_escape_string достаточным для очистки ввода пользователя? Ajax-подход к заполнению второго динамического раскрывающегося списка на основе выбора в первом Передайте данные формы на другую страницу с помощью php Преимущества PHP для цепочки? Подавать изображение с помощью скрипта PHP и напрямую загружать изображение Доступ к глобальной конфигурации в Zend Framework 2

Как преобразовать значения массива в нижний регистр в PHP?

Как преобразовать все значения в массив в нижний регистр в PHP?

Что-то вроде array_change_key_case ?

use array_map() :

 $yourArray = array_map('strtolower', $yourArray); 

Просто для полноты: вы также можете использовать array_walk :

 array_walk($yourArray, function(&$value) { $value = strtolower($value); }); 

Из документов PHP:

Если обратный вызов должен работать с фактическими значениями массива, укажите первый параметр обратного вызова в качестве ссылки. Затем любые изменения, внесенные в эти элементы, будут сделаны в самом исходном массиве.

Или непосредственно через цикл foreach используя ссылки :

 foreach($yourArray as &$value) $value = strtolower($value); 

Обратите внимание, что эти два метода изменяют массив «на месте», тогда как array_map создает и возвращает копию массива, что может быть нежелательно в случае очень больших массивов.

Вы можете использовать array_map (), установить первый параметр в 'strtolower' (включая кавычки), а второй – $ lower_case_array.

array_change_value_case

продолжать

  function array_change_value_case($array, $case = CASE_LOWER){ if ( ! is_array($array)) return false; foreach ($array as $key => &$value){ if (is_array($value)) call_user_func_array(__function__, array (&$value, $case ) ) ; else $array[$key] = ($case == CASE_UPPER ) ? strtoupper($array[$key]) : strtolower($array[$key]); } return $array; } $arrays = array ( 1 => 'ONE', 2=> 'TWO', 3 => 'THREE', 'FOUR' => array ('a' => 'Ahmed', 'b' => 'basem', 'c' => 'Continue'), 5=> 'FIVE', array('AbCdeF')); $change_case = array_change_value_case($arrays, CASE_UPPER); echo "<pre>"; print_r($change_case); 
 Array ( [1] => one [2] => two [3] => three [FOUR] => Array ( [a] => ahmed [b] => basem [c] => continue ) [5] => five [6] => Array ( [0] => abcdef ) ) 

array_map() – правильный метод. Но если вы хотите преобразовать определенные значения массива или все значения массива в строчные буквы по одному, вы можете использовать strtolower() .

 for($i=0; $i < count($array1); $i++) { $array1[$i] = strtolower($array1[$i]); } 

Если вы хотите записать все значения во вложенном массиве, используйте следующий код:

 function nestedLowercase($value) { if (is_array($value)) { return array_map('nestedLowercase', $value); } return strtolower($value); } 

Так:

 [ 'A', 'B', ['C-1', 'C-2'], 'D'] 

вернется:

 [ 'a', 'b', ['c-1', 'c-2'], 'd'] 

Вы также можете использовать комбинацию array_flip() и array_change_key_case() . Посмотреть это сообщение