json格式与json_encode()

时间:2015-06-18 01:25:04

标签: php json

我一直在使用PHP中的json_encode(),输出是:

{"Inventors:":"Wilson; Nestor Antonio Lagos (Santiago, CL)"}
{"Applicant: ":"Nestor Antonio Lagos  Santiago  N\/A  CL"}
{"Name":"Type"}

我希望json格式如:

json = {
"Inventors:":"Wilson; Nestor Antonio Lagos (Santiago, CL)",
"Applicant: ":"Nestor Antonio Lagos  Santiago  N\/A  CL",
"Name":"Type"
};

我已经尝试但总是我的数组的转换是相同的。

$contents = "<table><tr><td>Row 1 Column 1</td><td>Row 1 Column 2</td></tr><tr><td>Row 2 Column 1</td><td>Row 2 Column 2</td></tr></table>";

$DOM = new DOMDocument;
$DOM->loadHTML($contents);

$items = $DOM->getElementsByTagName('tr');

function tdrows($elements)
{
    $str = "";
    $i = 0;
    foreach ($elements as $element)
    {   
        if($i == 0) {
            $itm = $element->nodeValue;
            $i++;
        } else {
            if(strlen($element->nodeValue) > 1 )
            $array = array($itm => trim($element->nodeValue));
        }
        //$str .= $element->nodeValue . ", ";
    }
    echo json_encode($array);
}

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码段创建所需的json输出:

<?php
$people = array();
$people['Inventors']='Wilson; Nestor Antonio Lagos (Santiago, CL)';
$people['Applicant']='Nestor Antonio Lagos  Santiago  N\/A  CL';
$people['Name']='Nestor Antonio Lagos  Santiago  N\/A  CL';

echo json_encode($people);
?>

您正在接收这样的输出,因为您正在创建一个新数组并插入$ array。使用以下代码

$array[$itm] = trim($element->nodeValue); 

它会起作用。