Как изменить определенную часть поля?
Имеется поле "item", которое содержит: "0;0;0". Вопрос: как мне изменить в запросе, например, только второй ноль на 1 или же на 2, посредством php соответственно?
Источник: Stack Overflow на русском
Имеется поле "item", которое содержит: "0;0;0". Вопрос: как мне изменить в запросе, например, только второй ноль на 1 или же на 2, посредством php соответственно?
Простое решение, это использовать php-функцию: explode("Разделитель", "строка")
.
Например:
$str = "0;0;0"
$arrElement = explode(";", $str);
Теперь переменная (массив) $arrElement
содержит три элемента.
И если вы, например, хотите поправить второе значение и записать сроку, то это можно cделать так:
$arrElement[1] = 2; //Поменяли значение на 2.
$newStr = implode(';',$arrElement);
P.S. Этот вариант прост в понимании и реализации, но не является лучшим решением. Лучшее решение - это написать регулярное выражение.
выборка из бд $item
$items = explode(';', $item);
$items[1] = $items[1]+1;
$item = implode(';',$items);
записать в бд $item