ホームページ >バックエンド開発 >PHPチュートリアル >PHPでデータベースデータをJSON形式に変換する方法。たとえば、「phone」「123456」を「name」「phone」「value」「123456」に変更します。

PHPでデータベースデータをJSON形式に変換する方法。たとえば、「phone」「123456」を「name」「phone」「value」「123456」に変更します。

WBOY
WBOYオリジナル
2016-06-13 12:14:321098ブラウズ

PHPでデータベースデータをJSON形式に変換する方法。たとえば、「phone」:「123456」を「name」:「phone」,「value」:「123456」に変更します
「phone」を変更する方法:」 1234567」から「名前」:「電話番号」、「値」:「123456」。 。
------ソリューションのアイデア----------------------

$s = '{"phone":"1234567"}';<br /><br />$a = json_decode($s, 1);<br />foreach($a as $k=>$v) $r[] = array('name' => $k, 'value' => $v);<br /><br />echo json_encode($r);<br />
[{"name" :"phone","value":"1234567"}]

-----ソリューションのアイデア-------- ---
<br />$a = '{"phone":"1234567"}';<br />$ret = array();<br />$arr = json_decode($a, true); <br />foreach($arr as $key=>$val){<br />    array_push($ret, array('name'=>$key,'value'=>$val));<br />}<br /><br />echo json_encode($ret);<br />


[{"name":"phone","value":"1234567"}]
------解決策アイデア----------------------
<br />$s="'phone':'1234567'";<br />$arr=explode(':',$s);<br />for($i=0;$i<sizeof($arr);$i++){<br />    $item=array('name'=>current($arr),'value'=>next($arr));<br />    break;<br />}<br />echo json_encode($item);<br />

<br />{"name":"'phone'","value":"'1234567'"}<br />

------解決策----------------------
$s = '[{"phone":"18511337033","name":"ggg","id_card":"123321123321"}]';<br />$a = json_decode($s, 1);<br /><br />foreach($a as $t) {<br />  $r = array();<br />  foreach($t as $k=>$v) $r[] = array('name' => $k, 'value' => $v);<br />  $res[] = $r;<br />}<br /><br />echo json_encode($res);<br />
[[{"name":"phone","value":"18511337033 " },{"名前":"名前","値":"ggg"},{"名前":"id_card","値":"123321123321"}]]

- - ----解決策のアイデア----------------------

引用:
引用: 引用:

$s = '[{"phone":"18511337033","name":"ggg","id_card":"123321123321"}]';<br />$a = json_decode($s, 1);<br /><br />foreach($a as $t) {<br />  $r = array();<br />  foreach($t as $k=>$v) $r[] = array('name' => $k, 'value' => $v);<br />  $res[] = $r;<br />}<br /><br />echo json_encode($res);<br />
[[{"名前":"電話","値":"18511337033"},{"名前":"名前", "値":"ggg"},{"名前":"id_card","値":"123321123321"}]]


。 。今、別のニーズがあります。 。 2 つの [[{"name":"111","value":"222" }]] ではなく、
1 つの角括弧 [{"name":"111" ,"value) を出力するにはどうすればよいですか? ":"222" }]


次のように変更します:

<br />$s = '[{"phone":"18511337033","name":"ggg","id_card":"123321123321"}]';<br />$a = json_decode($s, 1);<br /> <br />foreach($a as $t) {<br />  $r = array();<br />  foreach($t as $k=>$v) $r[] = array('name' => $k, 'value' => $v);<br />  $res[] = $r;<br />}<br /> <br />echo json_encode(array_pop($res));<br />


[{"name":"phone", "value ":"18511337033"},{"名前":"名前","値":"ggg"},{"名前":"id_card","値":"123321123321"}]
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。