Разбиение строки в массив в PHP - PullRequest
1 голос
/ 02 октября 2010

Я хочу разбить строку, которая состоит из продуктов.Каждый продукт заключен в {..} и разделен запятой.

Например, у меня есть строчка ниже.

[
{\"productid\" : \"prod:kj42j3d24-47c2-234lkj2-e3c2-cfc9a4a3b005\",\"memo\" : \"
product description
\",\"taxable\" : 0,\"unitweight\" : 0,\"unitcost\" : 0,\"unitprice\" : 12.34,\"quantity\" : 1.00},
{\"productid\" : \"prod:k324jl-462d-e589-aecf-32k4j\",\"memo\" : \"
prodict description
\",\"taxable\" : 0,\"unitweight\" : 0,\"unitcost\" : 0,\"unitprice\" : 12.23,\"quantity\" : 1}
]

и я хочу разделить каждый продукт на разные индексы массива.Спасибо.

Ответы [ 3 ]

2 голосов
/ 02 октября 2010

Выглядит как JSON для меня:

$a = json_decode(" [ 
  {\"productid\" : \"prod:kj42j3d24-47c2-234lkj2-e3c2-cfc9a4a3b005\",
   \"memo\" : \" product description \",\"taxable\" : 0,\"unitweight\" : 0,
   \"unitcost\" : 0,\"unitprice\" : 12.34,\"quantity\" : 1.00}, 
  {\"productid\" : \"prod:k324jl-462d-e589-aecf-32k4j\",
   \"memo\" : \" prodict description \",\"taxable\" : 0,\"unitweight\" : 0,
   \"unitcost\" : 0,\"unitprice\" : 12.23,\"quantity\" : 1} ] ", true
);
1 голос
/ 02 октября 2010

В данном конкретном случае кажется, что ваша строка уже в формате JSON. PHP имеет встроенную поддержку для этого. Чтобы взять эту строку и сделать ее объектом JSON, используйте функцию json_decode.

Больше информации в руководстве по PHP здесь: http://www.php.net/manual/en/function.json-decode.php

1 голос
/ 02 октября 2010

ваша строка очень похожа на JSON-кодированный массив объектов.Попробуйте использовать функцию php json_decode .

$parsed_array = json_decode($str);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...