我有以下代码:
$result = print_r($reponse, true);
$result = str_replace("[", '"', $result);
$result = str_replace("]", '"', $result);
echo $result;
输出就是这样:
Array ( "333212" => Array ( "view" => 323 "sold" => 3 "buy" => 43 "number" => 333212 ) )
我需要在每个值之后添加逗号:
Array ( "333212" => Array ( "view" => 323, "sold" => 3, "buy" => 43, "number" => 333212 ) )
为了使用Niklesh共享的这个很棒的代码提取变量中的每个值!
extract values in array and create variable php
我非常感谢你们所有人,非常感谢你们很棒!
答案 0 :(得分:0)
您的$响应值已经采用以下格式:
Array ( "333212" => Array ( "view" => 323, "sold" => 3, "buy" => 43, "number" => 333212 ) )
因为你正在使用print_r,它会将上面的php数组显示为用户可见格式,如下所示
Array ( "333212" => Array ( [view] => 323 [sold] => 3 [buy] => 43 [number] => 333212 ) )
您不能将此print_r输出分配给另一个php变量,并使用该格式化变量来提取您出错的数据
你不必做任何事情,比如用引号替换方括号或添加逗号来从php数组中获取值。
如果您想获取视图,已售出和购买的值,请尝试以下操作:
echo $response["333212"]["view"];
echo $response["333212"]["sold"];
echo $response["333212"]["buy"];
而不是使用$ result来获取数据,使用$ response来获取数据
答案 1 :(得分:0)
取代print_r
函数,使用它的新版本,名为print__r
!!
function print__r($array)
{
if (! is_array($array)
{
$result=$array;
}
else
{
$result='Array (';
foreach($array as $key=>$value)
$result.="\"$key\" => ".$print__r($value).",";
$result=substr($result,0,-1).' )';
}
return($result);
}