Как создать и настроить свой веб-сервер на VDS (05 сен 2024)

Осенью самое время заняться установкой и тюнингом своего веб-сервера. Не правда ли?

Время от времени - и не так чтобы редко - на форуме звучат вопросы по нативному PHP... решили собирать их в этой ветке.

Роллы PHP

Больше
7 года 1 мес. назад - 7 года 1 мес. назад #1 от Aleksej
Aleksej создал тему: Роллы PHP
Тема почерпнута из вопроса новичка на php.ru/forum; а решение вполне достойно того, чтобы продублировать здесь, в этом разделе. Итак, как бы вы отнеслись к необходимости из строчки

Code:
ID005 Ролл Дракон маки 380 руб. 1 = 380 ID007 Ролл Икура маки 220 руб. 3 = 220 ID008 Ролл Кавагиши 220 руб. 8 = 220 ID009 Ролл Калифорния 220 руб. 6 = 220

убрать все лишнее средствами php, оставив только идентификаторы и количество?
Быстрое решение "на коленке", в стиле студии Артемия Лебедева ("вот так это было, и вот так нам пришлось помучиться") выглядело как-то так:

Code:
<? $string = 'ID005 Ролл Дракон маки 380 руб. 1 = 380 ID007 Ролл Икура маки 220 руб. 3 = 220 ID008 Ролл Кавагиши 220 руб. 8 = 220 ID009 Ролл Калифорния 220 руб. 6 = 220'; $a = explode("ID", $string); $arr = preg_replace('/[^0-9]/', ' ', $a); $c = implode(" ",$arr); $string=preg_replace('/ {2,}/',',',$c); $array = explode(',', $string); foreach ($array as $k=>$v) { if ($k % 2 != 1) $b[] = $v; } $d = implode(" ",$b); echo $d; // 005 1 007 3 008 8 009 6


, более же компактное и грамотное решение состояло в следующем:

Code:
<? $s = 'ID005 Ролл Дракон маки 380 руб. 1 = 380 ID007 Ролл Икура маки 220 руб. 3 = 220 ID008 Ролл Кавагиши 220 руб. 8 = 220 ID009 Ролл Калифорния 220 руб. 6 = 220'; echo(rtrim(preg_replace('/ID(\d+).+?(\d+) = \d+( |$)/', '$1#$2,', $s), ',')); //005#1,007#3,008#8,009#6


Сравнение двух подходов к решению проблемы представляет интерес, мотаем на ус, а вдруг пригодится кому.
Последнее редактирование: 7 года 1 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 3
Работает на Kunena форум