0

我正在创建一个数据数组,然后在其上使用 json_encode,然后将其存储在我的数据库中。现在,我要做的是从数据库中返回它们并在 foreach 循环中使用它们,但我无法开始工作。

这是它在数据库中的样子:

["483","482"]

我希望能够做这样的事情:

$json = ["483","482"]; //(note, this would be the value directly from the database)

foreach($json as $photoID)
{
    echo $photoID;
}

我再次尝试使用 json_encode,显然它没有用。它刚刚返回:"["483","482"]"

4

3 回答 3

3

您应该使用 json_decode 将其返回到 PHP 数组。json_decode

因此,当您有 php 变量并想要 json 时,请使用 php_encode,如果您想要相反的方式,请使用 json_decode。

编辑:

试试这个例子:

// PHP Array
$array = array(483, 482);

var_export($array);
echo "<br />";

// Goes into JSON
$json = json_encode($array);

var_export($json);
echo "<br />";

// And back to PHP array
$backToArray = json_decode($json);

var_export($backToArray);
echo "<br />";

这将输出:

array ( 0 => 483, 1 => 482, )
'[483,482]'
array ( 0 => 483, 1 => 482, )

这应该有效。

于 2012-10-20T18:59:43.797 回答
0

您是否尝试过json_decode,它解码一个 json 字符串

于 2012-10-20T18:59:25.340 回答
0

使用json_decode($data,TRUE),这会给你数组

请参阅工作代码:http ://codepad.org/HVNOuGmY

$c = '["483","482"]';

echo "<pre>";
print_r (json_decode($c,TRUE));
于 2012-10-20T18:59:36.947 回答