Эй, ребята, мне действительно нужна помощь здесь.Как вытащить часть массива JSON?
Мой фид JSON дает мне это как ключ/значение пары:
"custom_fields":{"zn_meta_elements":["a:8:{s:7:\"sp_link\";a:2:{s:3:\"url\";s:0:\"\";s:6:\"target\";s:6:\"_blank\";}s:6:\"sp_col\";s:0:\"\";s:14:\"sp_show_social\";s:3:\"yes\";s:10:\"port_media\";a:1:{i:0;a:3:{s:20:\"dynamic_element_type\";s:10:\"port_media\";s:21:\"port_media_image_comb\";a:3:{s:5:\"image\";s:0:\"\";s:3:\"alt\";s:0:\"\";s:5:\"title\";s:0:\"\";}s:21:\"port_media_video_comb\";s:26:\"http:\/\/vimeo.com\/112591203\";}}s:15:\"page_title_show\";s:3:\"yes\";s:10:\"page_title\";s:0:\"\";s:13:\"page_subtitle\";s:0:\"\";s:20:\"zn_disable_subheader\";s:2:\"no\";}"]}
Переменная Я хочу, чтобы получить значение из является port_media_video_comb
Так что я хочу, чтобы вытащить http:\/\/vimeo.com\/112591203\
часть и превратить его в полезный URL.
Код настоящее время я использую, чтобы вытащить информацию выглядит следующим образом:
jQuery.each(data.posts, function(i, item) {
html += '<li>';
html += '<div class="entry"><img src="' + data.posts[i].thumbnail + '" width="50px" height="50px" style="float:left; padding-right: 5px;"><a href="' + data.posts[i].url +'" target="_blank">' + data.posts[i].title + '</a><br /><p>' + data.posts[i].date + '</div>' ;
html += '</li>';
});
бы я, как, data.posts[i].custom_fields.port_media_video_comb
, но потом, как я убедиться, что он работает в качестве URL? Я собираюсь использовать его в теге .
Любая помощь приветствуется!
EDIT:
Хорошо, так что я использовал этот сайт: http://json.parser.online.fr/ Для того, чтобы помочь мне выяснить тип элемента, мне нужно, чтобы захватить.
я обнаружил, что я мог бы получить в строку, как это: data.posts[i].custom_fields.zn_meta_elements
и что возвращает: "a:8:{s:7:\"sp_link\";a:2:{s:3:\"url\";s:0:\"\";s:6:\"target\";s:6:\"_blank\";}s:6:\"sp_col\";s:0:\"\";s:14:\"sp_show_social\";s:3:\"yes\";s:10:\"port_media\";a:1:{i:0;a:3:{s:20:\"dynamic_element_type\";s:10:\"port_media\";s:21:\"port_media_image_comb\";a:3:{s:5:\"image\";s:0:\"\";s:3:\"alt\";s:0:\"\";s:5:\"title\";s:0:\"\";}s:21:\"port_media_video_comb\";s:26:\"http:\/\/vimeo.com\/112591203\";}}s:15:\"page_title_show\";s:3:\"yes\";s:10:\"page_title\";s:0:\"\";s:13:\"page_subtitle\";s:0:\"\";s:20:\"zn_disable_subheader\";s:2:\"no\";}"
Как строку.
Как я могу захватить только часть http: // ... в точку с запятой и превратить ее в URL-адрес. Url?
Это не JSON. Это другая форма сериализации (возможно, PHP). Вам необходимо найти подходящий десериализатор и десериализовать в структуру данных, в которой вы можете читать данные, из которых вы хотите. –
Почему бы вам просто не десериализовать эту строку, чтобы вы могли просто получить доступ к необходимым вам свойствам: custom_fields = JSON.parse (custom_fields); В этом весь смысл JSON: не нужно разбираться со строками, это объект! – frenchie