Как изменить определенную часть поля?

Рейтинг: 0Ответов: 2Опубликовано: 04.12.2014

Имеется поле "item", которое содержит: "0;0;0". Вопрос: как мне изменить в запросе, например, только второй ноль на 1 или же на 2, посредством php соответственно?

Ответы

▲ 2Принят

Простое решение, это использовать php-функцию: explode("Разделитель", "строка").

Например:

$str = "0;0;0"
$arrElement = explode(";", $str);

Теперь переменная (массив) $arrElement содержит три элемента.
И если вы, например, хотите поправить второе значение и записать сроку, то это можно cделать так:

$arrElement[1] = 2; //Поменяли значение на 2.
$newStr  = implode(';',$arrElement);

P.S. Этот вариант прост в понимании и реализации, но не является лучшим решением. Лучшее решение - это написать регулярное выражение.

▲ 2

выборка из бд $item

$items = explode(';', $item);
$items[1] = $items[1]+1;
$item = implode(';',$items);

записать в бд $item