Последние два дня я пытался выполнить поиск в Google и на всех форумах, но, похоже, не могу найти никакого ответа, который удаленно помогает мне с этой проблемой.
У меня есть сток .csv
файл, в котором мне нужно изменить значения размеров обуви для работы с Woocommerce. Размеры обуви разные в каждом ряду.
Размеры в CSV перечислены так: 4-10, 5-12, 3-9
и т.д. один набор чисел в строке 4-10
, Я вставил файл в массив в моем сценарии php.
Так что для каждой обуви у меня есть такой массив:
Array
(
[0] => 4578
[1] => kors
[2] => red
[3] => wedge
[4] => 4-10
)
Мне нужно принять последнее значение, например 4-10
и измените их на что-то вроде этого: 4|5|6|7|8|9|10
,
Поэтому в основном мне нужно взять первое число в элементе и увеличить его на 1 и отделить его с помощью символа «|», пока оно не достигнет значения последнего числа. Тогда мне нужно это заменить 4-10
в элементе с 4|5|6|7|8|9|10
,
Это должно работать для вас:
(Здесь я сначала получаю последний элемент массива и explode()
это с -
в качестве разделителя. После этого я просто создаю массив с range()
где я использую $start
а также $end
переменная. В конце я просто сохраняю элемент обратно implode()
об этом.)
<?php
$arr = [4578, "kors", "red", "wedge", "4-10"];
list($start, $end) = explode("-", $arr[count($arr)-1]);
$arr[count($arr)-1] = implode("|", range($start, $end));
print_r($arr);
?>
выход:
Array ( [0] => 4578 [1] => kors [2] => red [3] => wedge [4] => 4|5|6|7|8|9|10 )
Других решений пока нет …