Страница 1 из 1

Подскажите как правильно распарсить строку на числа.

Добавлено: Пт сен 05, 2025 10:28 pm
karsotrade
Получаю с ардуины строку из однозначных чисел разделенных запятой. Данный массив (например 1,2,3) гет запросом записывается в свойство обьекта 'Days', далее пытаюсь выделить отдельные числа и присвоить их свойствам L0, L1 и L2, т.е. L0 должно иметь значение 1, L1 значение 2 и L2 соответственно 3. Все попытки не приводят к результату, свойства обьекта пустые, не получают значения.

$this->setProperty('Days',$params['Days']);
$mas = 'Days';
$exp = explode(",", $mas);
$data0 = substr($exp[0]);
$data1 = substr($exp[1]);
$data2 = substr($exp[2]);
$this->setProperty('L0',$data0);
$this->setProperty('L1',$data1);
$this->setProperty('L2',$data2);

Подскажите пожалуйста как правильно сделать.

Re: Подскажите как правильно распарсить строку на числа.

Добавлено: Сб сен 06, 2025 3:24 am
V.A.S.t
Для начала, почитать про функции PHP. В частности, substr, которая тут вообще непонятно зачем и неправильно составлена.
Во-вторых, что вы разделяете на запятые в слове Days? Именно это слово хранится в переменной $mas.
Если предположить, что нужная строка с последовательностью цифр с запятыми хранится в $params['Days'], то код будет выглядеть так:

Код: Выделить всё

$exp = explode(",", $params['Days']);
for ($i=0; $i<count($exp); $i++) {
  $this->setProperty('L'.$i, $exp[$i]);
}

Re: Подскажите как правильно распарсить строку на числа.

Добавлено: Сб сен 06, 2025 8:38 pm
karsotrade
Огромнейшее спасибо за помощ, разобрался, нашел ошибки, все заработало!