在数组php

时间:2017-04-01 06:39:32

标签: php arrays comma

我有以下代码:

  $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

我非常感谢你们所有人,非常感谢你们很棒!

2 个答案:

答案 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);
  }