PHP从foreach循环获取结果

时间:2016-03-08 03:43:07

标签: php arrays loops foreach

我是PHP新手我试图获得foreach循环循环结果。 我有的循环

foreach($results as $result){
   $result = $result['names'];
}

循环内部是strings (John, Fred, Ann);

我试图在循环之外得到这个,当我试图回应$结果我只有约翰时,我该怎么做以获得所有三个名字?

我试图创建一个像

这样的数组
$resultData= array();
foreach($results as $result){
  $resultData = $result['names'];
}
echo $resultData;

这不起作用,有没有人有任何建议?

更新的问题: 当我尝试var_dump($resultData)我正在

string(7) "John" string(7)"Fred" string(7)"Ann"

6 个答案:

答案 0 :(得分:1)

这也是一个例子:

$employeeAges;
$employeeAges["Lisa"] = "28";
$employeeAges["Martin"] = "16";
$employeeAges["Erik"] = "35";
$employeeAges["Victor"] = "46";
$employeeAges["Grace"] = "34";

foreach( $employeeAges as $key => $value){
    echo "Name: $key, Age: $value <br />";
}
  

输出
  姓名:Lisa,年龄:28岁   姓名:Martin,年龄:16岁   姓名:Erik,年龄:35岁   姓名:Victor,年龄:46岁   姓名:Grace,年龄:34岁

你也可以这样做:

foreach语法:** $ something as $ key =&gt; $ value
 对于$ employeeAges关联数组的每个元素,我想将键引用为 $ key ,将值称为 $ value

$employeeAges;
$employeeAges["Lisa"] = "28";
$employeeAges["Martin"] = "16";
$employeeAges["Erik"] = "35";
$employeeAges["Victor"] = "46";
$employeeAges["Grace"] = "34";

foreach( $employeeAges as $name => $age){
    echo "Name: $name, Age: $age <br />";
}

运营商“=&gt;”表示键和值之间的关系。你可以想象关键点=&gt;价值。在我们的示例中,我们将键命名为 $ key ,将值 $ value 命名为。但是,可能更容易将其视为 $ name $ age 。在我们的示例下面这样做并注意输出是如何相同的,因为我们只更改了引用键和值的变量名。

你仍然得到相同的输出。

  

输出
  姓名:Lisa,年龄:28岁   姓名:Martin,年龄:16岁   姓名:Erik,年龄:35岁   姓名:Victor,年龄:46岁   姓名:Grace,年龄:34岁

答案 1 :(得分:0)

这样的事情:

foreach($results as $result){
$resultData[] = $result['your_value'];
}
print_r($resultData);
echo $resultData[0];

答案 2 :(得分:0)

这是正确的代码。你没有正确宣布我

$resultData= array();
$i = 0;
foreach($results as $result){
      $resultData[$i] = $result['names'];
      $i++
}
//for single
echo $resultData[0];

//for whole
print_r($resultData);

答案 3 :(得分:0)

尝试在foreach循环中使用explode

 foreach($results as $result)
 {
      $result = explode(",",$result['names']);
 }
 print_r($result);

如果你在$ result中有一个名字,那么用&#34;,&#34;并将其爆炸出来

     foreach($results as $result)
     {
          $val = implode(",",$result['names']);
     }
     $value = explode(","$val);
     print_r($value[0]);

答案 4 :(得分:0)

尝试使用此代码

 $resultData= array();`
 foreach($results as $key => $result){
      $resultData[$key] = $result['names'];
 }
  echo "<pre>", print_r($resultData, true);

答案 5 :(得分:0)

是的,我搞定了,这是代码。谢谢大家。

      $results;         
      $results[0];
      $results[1];
      $results[2];
       $t = array();
        foreach($results as $key => $value)
        {        
          $t[]= $value['name'];
        }  
        $a = "'".implode("','", $t)."'";
        echo $a;