我试图将从php简单html dom获得的数据放入json中,但它返回了一个无效的json。
这是我的代码
<?php
require 'simple_html_dom.php';
header('Content-Type: application/json; charset=utf-8');
function getUrls($url){
$fbPost = grab_page($url);
$postUsers = new simple_html_dom();
$postUsers->load($fbPost);
foreach($postUsers->find('#m_story_permalink_view h3 a') as $fbUserDiv) {
$data = $fbUserDiv->href;
$userurl['user_url'] = $data;
$response["status"] = 1;
$response["data"] = $userurl;
echo json_encode($response);
}
}
getUrls($url);
这是我得到的json的响应:
{"status":1,"data":{"user_url":"/profile.php?id=100006046927552&refid=18&__tn__=C-R"}}{"status":1,"data":{"user_url":"id=100006046927552"}}{"status":1,"data":{"user_url":"/profile.php?id=100071323021139&refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/ammar.hosny.33?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/rawan.magdy.37017?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/michaelabdo.michaelabdo.9?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/profile.php?id=100022618071315&refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/abrar.agour?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/ahmedaymendaana?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/ahmed.abdulrhman.9231712?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/abdallh.gmal.393?refid=18&__tn__=R"}}{"status":1,"data":{"user_url":"/profile.php?id=100008883040689&refid=18&__tn__=R"}}
您可以修改getUrls()
以生成有效的JSON响应:
function getUrls($url){
$responses = array();
$fbPost = grab_page($url);
$postUsers = new simple_html_dom();
$postUsers->load($fbPost);
foreach($postUsers->find('#m_story_permalink_view h3 a') as $fbUserDiv) {
$data = $fbUserDiv->href;
$userurl['user_url'] = $data;
$response["status"] = 1;
$response["data"] = $userurl;
$responses[] = $response;
}
echo json_encode($responses);
}