PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
Календарь
Март (2021)
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031    
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
    • Возможно с течением времени этот...
  • TOP-5

    • Метод POST (2939962)
    • Привет, МИР! (907179)
    • Метод GET (661917)
    • Операторы (601792)
    • Firefox уже запущен, но не отвечает... (347165)

Создание массива из строки с разделителем.

Главная » Уроки PHP » Создание массива из строки с разделителем.
PHP урок № 279

Создание массива из строки, текста.

Для чего это может пригодиться?
Разделителем слов или словосочетаний, или других более обширных текстов. Может служить любой знак препинания (точка с запятой, запятая) или набор символов (::). Использовать этот подход имеет смысл при внесении данных например в таблицы Exсel. Есть такой формат документа принимаемый программой Exсel с расширением csv. Смысл разделителя сводится к тому, что каждая строка текста является строкой таблицы Exсel, а в свою очередь разделитель принятый по умолчанию в документе (например запятая), является границей поля этой строки таблицы. Таким образом если написать в блокноте текст принимая одну строку его как строку таблицы и сохранить файл с расширением csv, а потом открыть в excel, то мы увидим готовую таблицу.
В данном примере, я хочу показать, как формировать массив из текста разделённого запятыми. Запятая соответственно принимается как разделитель. С Excel это вряд ли связано, но при понимании процесса формирования массива, код можно исправить и принять другой алгоритм решения, который пригоден будет именно вам, для решения вашей задачи.
Пока по просьбе заказчика этого урока, примем его условия и сохраним текст разделённый запятыми в массив, каждая часть текста будет иметь в качестве границ угловые скобки.

Листинг № 1 - Создание массива из текста с разделителем запятая

<?php 
// Создание массива из строки
if($_POST['add_array']=="Получить массив")
{
   
// новый массив для заполнения значениями
   
$new_arr = array();
   
$text = explode(",", htmlspecialchars($_POST['text']));
   for(
$i=0; $i<count($text); $i++)
   {
         
$vol = "<".$text[$i].">";
         
array_push($new_arr,$vol);
   }
   
print_r($new_arr);
}
?>
<form  method="post" action="">
  Введите  текст:<br>
  <textarea name="text" cols="70" rows="5"></textarea>
  <br>
  <br>
  <input name="add_array" type="submit" value="Получить массив">
</form>

Урок закончен.

SETTER © LPHP.RU
Администрация сайта
31.01.2010 19:27:06

Обсудить на форуме.
Понравился урок? Не пропусти следующий!
Рекомендованные уроки этого раздела:
  • Проверка корректности ввода числа.
  • Установка PEAR
  • Передвигаем картинку. Двигаем рисунок.
  • PHP фотогалерея (часть 2)

Напишите свой комментарий
Ваше имя
Сообщение
Введите цифры с картинки:
 

Комментарии

reset 06.02.2010 15:21:39
спасибо
Туповатый 03.11.2013 11:35:47
А зачем создавать два массива? explode возвращает массив text, с ним и надо работать. надо экономить память.
это 555adm 02.03.2014 07:45:59
Предлагаю такой вариант: тут был код с комментами, но движок сайта не умеет экранировать код и запрещает использовать некоторые символы, так что выдаю алгоритм: заменим все запятые на закр.угловая скобка запятая открывающая угловая скобка добавим в начале открывающую, в конце закрывающую угловую скобку через експлод получим массив элементов в угловых скобках ИМХО такой вариант короче и быстрее так как: - один массив вместо 2х - нет цикла для обработки каждого элемента массива и добавления элементов в новый массив - меньше используетья переменных (нет vol и i) минусы: если платят за количество кода, то да, тут мало символов P.S. проверку входных данных лучше сделать отдельной функцией. 555adm.
  • Яндекс.Метрика Здесь находится аттестат нашего WM идентификатора 185571665285
  • "LPHPRU" © 2009-2021