2016-12-01 3 views
0

Итак, я работаю с wp rest api и плагином контроллера wp rest. У меня есть музыкальная тема, которая делает некоторые интересные вещи. Когда я сделать вызов API один из свойств я получаю это:WP REST API - странное форматирование в ответ

"subheader_img": [ 
    "a:1:{i:0;a:5:{s:5:\"image\";s:0:\"\";s:5:\"color\";s:0:\"\";s:6:\"repeat\";s:6:\"repeat\";s:8:\"position\";s:8:\"left top\";s:11:\"attachement\";s:6:\"scroll\";}}" 
    ], 

его строка, что я знаю, должно быть массивом. Я не уверен, какой тип кодирования применяется к нему. Но я пытаюсь очистить его на стороне javascript. Кто-нибудь знает, что делается с этим массивом? И если есть какие-либо функции javascript, которые могут помочь? Я пробовал JSON.Parse и это явно не сработает, потому что ... это не JSON. Я также попытался удалить первые несколько символов string.substring (x), но после этого я столкнулся с одной и той же проблемой.

Я знаю его что-то простое, я просто не уверен, что.

Если возможно, я хотел бы проанализировать его в javascript, изменение конечной точки может быть сложнее из-за темы wordpress.

+2

Данные («a: 1: ...») сериализованы. Вы должны исправить эту сторону сервера, так как это еще больше помогает очистить ее на стороне клиента. – JimL

+1

Похож на сериализованную строку для меня. Используйте 'unserialize()': http://php.net/manual/en/function.unserialize.php – WillardSolutions

+0

hahaha большое спасибо! – aibarra

ответ

2
функции

Используйте РГ для сериализации:

Суть: Проверьте, если элемент массива сериализованная строка (is_serialized_string) , а затем maybe_unserialize это. Затем вы можете оценить результат, чтобы узнать, находится ли он в формате, который вы ожидаете (например, в массиве).

Смежные вопросы