如何使用PHP为JSON创build一个数组?
从PHP代码我想创build一个JSON数组:
[ {"region":"valore","price":"valore2"}, {"region":"valore","price":"valore2"}, {"region":"valore","price":"valore2"} ]
我该怎么做?
容易peasy柠檬squeezy: http ://www.php.net/manual/en/function.json-encode.php
<?php $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr); ?>
在前面提到的页面上andyrusterholz at gmail dot com
上有一个可以处理复杂的嵌套数组的东西(如果这是你的东西的话)。
使用PHP的本地json_encode
,像这样:
<?php $arr = array( array( "region" => "valore", "price" => "valore2" ), array( "region" => "valore", "price" => "valore2" ), array( "region" => "valore", "price" => "valore2" ) ); echo json_encode($arr); ?>
更新 :在评论中回答你的问题。 你这样做:
$named_array = array( "nome_array" => array( array( "foo" => "bar" ), array( "foo" => "baz" ) ) ); echo json_encode($named_array);
简单:只需创build一个(嵌套的)PHP数组,并调用json_encode
。 数字数组转换成JSON列表( []
),关联数组和PHP对象转换为对象( {}
)。 例:
$a = array( array('foo' => 'bar'), array('foo' => 'baz')); $json = json_encode($a);
给你:
[{"foo":"bar"},{"foo":"baz"}]
最好的方式,你应该去在php中创buildjson每一次首先转换ASSOCIATIVE数组中的值。
之后,只需简单地使用json_encode($associativeArray)
进行编码。 我认为这是在PHP中创buildjson的最佳方式,因为无论何时我们在php中获取结果表单的sql查询大部分时间,我们都会使用fetch_assoc
函数获取值,这也会返回一个关联数组。
$associativeArray = array(); $associativeArray ['FirstValue'] = 'FirstValue';
…等
之后。
json_encode($associativeArray);
也可以用于数组,您可以使用短注释:
$arr = [ [ "region" => "valore", "price" => "valore2" ], [ "region" => "valore", "price" => "valore2" ], [ "region" => "valore", "price" => "valore2" ] ]; echo json_encode($arr);
$json_data = '{ "Languages:" : [ "English", "Spanish" ] }'; $lang_data = json_decode($json_data); var_dump($lang_data);
只要input这一行会给你一个JSON数组,
echo json_encode($array);
通常你使用json_encode
从ios或android应用程序读取数据。 所以确保你不要回应除了准确的JSON数组以外的任何东西。