2016-12-15 9 views
0

Я ищу, чтобы удалить строки и символы двоеточия перед объектом, чтобы я мог искать объект для своих объектов.Как удалить строки и двоеточия перед объектом в PHP?

К примеру, у меня есть:

{ "result": [ { "face_id": "b668c61ad349ea928c75ba46338008af", "landmark": { "contour_chin": { "x": 55.448237, "y": 35.152167 }, "contour_left1": { "x": 40.641011, "y": 26.241833 }, "contour_left2": { "x": 40.791324, "y": 27.7615 } 

, и я хотел бы иметь:

{55.448237, 35.15216},{40.641011,26.241833 },{40.791324,27.7615 } 

Если нет простого способа удалить строки, вы можете порекомендовать простой способ для поиска соответствующее число. Итак, я ищу «contour_left2» и получаю {40.791324,27.7615}.

спасибо.

+2

У вас есть строка json, используйте 'json_decode ($ jsonString)', чтобы преобразовать его в массив или массив объектов. – JimL

+0

Возможный дубликат [Parsing JSON file with PHP] (http://stackoverflow.com/questions/4343596/parsing-json-file-with-php) – radoh

ответ

1

Так как это было предложено @JimL, вы имеете дело с json-строкой. Если расшифровать:

$data = @json_decode($string); 

Тогда $ данных будет объект, и вы будете иметь возможность получить доступ к его свойства:

$contour_left2 = $data->result[0]->landmark->contour_left2; 
// $contour_left2->x, $contour_left2->y 

(Конечно, вы должны сделать некоторые проверки первых, чтобы убедиться, что $ данных-> результат не пуст, и т.д ...)

Я не уверен, если вы абсолютно нужны координаты, как простой кортеж, но вы могли бы построить небольшой массив:

$tuple = array($contour_left2->x, $contour_left2->y); 

Надеюсь, это поможет!