如何用PHP生成.json文件?
CREATE TABLE Posts { id INT PRIMARY KEY AUTO_INCREMENT, title VARCHAR(200), url VARCHAR(200) }
json.php代码
<?php $sql=mysql_query("select * from Posts limit 20"); echo '{"posts": ['; while($row=mysql_fetch_array($sql)) { $title=$row['title']; $url=$row['url']; echo ' { "title":"'.$title.'", "url":"'.$url.'" },'; } echo ']}'; ?>
我必须生成results.json
文件。
这是一个示例代码:
<?php $sql="select * from Posts limit 20"; $response = array(); $posts = array(); $result=mysql_query($sql); while($row=mysql_fetch_array($result)) { $title=$row['title']; $url=$row['url']; $posts[] = array('title'=> $title, 'url'=> $url); } $response['posts'] = $posts; $fp = fopen('results.json', 'w'); fwrite($fp, json_encode($response)); fclose($fp); ?>
将获取的值插入数组而不是回显。
如果$rows
是您的数据,请使用file_put_contents()
并将json_encode($rows)
插入该文件中。
用这个:
$json_data = json_encode($posts); file_put_contents('myfile.json', $json_data);
为我工作。
使用PHP的json方法创buildjson,然后用fwrite将其写入文件。
你可以简单地使用php的json_encode函数,并保存文件处理函数,如fopen和fwrite 。
如果你拉dynamiclogging最好有一个PHP文件,创build一个JSON表示,而不是每次创build一个文件。
my_json.php
$array = array( 'title' => $title, 'url' => $url ); echo stripslashes(json_encode($array));
然后在脚本中设置文件my_json.php
的path
在这里我已经提到了创buildjson文件的简单syntex,并以漂亮的方式在json文件内部打印数组值。
$array = array('name' => $name,'id' => $id,'url' => $url); $fp = fopen('results.json', 'w'); fwrite($fp, json_encode($array, JSON_PRETTY_PRINT)); //here it will print the array pretty fclose($fp);
希望它会适合你….