Мы уже знаем разные типы данных и некоторые функции для работы с ними. На самом деле в PHP очень много уже готовых функций, на их обзор уйдет не один учебник, поэтому давайте разберем только некоторые из них. Начнем с того как сделать из массива строку и обратно из строки массив.
Давайте рассмотрим пример:
1 2 3 4 5 | <?php$colors = array(1=>'желтый',2=>'красный',3=>'голубой'); //определяем массив$string = implode(',',$colors); //переводим массив строкуprint $string; //выводим строку?> |
В результате все цвета будут выведены как строка, разделенные через запятую. Для функции implode() первым параметром мы указываем как разделять элементы массива в строке, а во втором параметре сам массив. Как видите все очень просто. А теперь наоборот из строки в массив.
И опять начнем с примера:
1 2 3 4 5 6 7 | <?php$colors = array(1=>'желтый', 2=>'красный', 3=>'голубой'); //определяем массив$string = implode(',' , $colors); //переводим массив строку$string .= ',черный,белый'; // допишем еще пару цветов $newArray = explode(',' , $string); // переводим из строки в массивprint_r($newArray); // выводим массив на печать?> |
В результате выведутся все наши цвета, в том числе и те которые мы дописали. Заметьте что функция explode нумерует элементы массива начиная отсчет от 0. Поэтому пятый элемент массива имеет ключ 4. Первый параметр функции explode() разделитель, который разделяет элементы в строке, а второй сама строка.
Иногда нам необходимо подсчитать длину строки или массива. Конечно если число небольшое, то это легко сделать, а если строка длиной 200-300 символов, а в массиве 500 элементов. Тогда на помощь приходят PHP функции подсчета длины строки и длины массива:
1 2 3 4 5 | $colors = array(1=>'желтый',2=>'красный',3=>'голубой');$string = implode(',',$colors); $string .= ',черный,белый'; $newArray = explode(',', $string); print strlen($string); //выводим длину строки |
Вот так с помощью функции strlen мы выводим длину строки, просто и удобно. У меня получилась длина 35.
Для массива существует тоже определенная длина массива, а именно количество элементов массива: