【问题标题】:Array Echo Together Each Value Together [duplicate]数组一起回显每个值[重复]
【发布时间】:2016-07-06 10:39:25
【问题描述】:

我有 2 个数组

$name   = Array ( [1] => Potrait Color Correction [2] => Extraction ) 
$number = Array ( [1] => 060716113223-13555       [2] => 49101220160607-25222 )

我正在尝试使用第二个数组的索引 1 打印第一个数组的索引 1,并且与索引 2 类似

这是我的打印代码(认为是错误的)

foreach ($name as $abc => $val) {
    foreach ($number as $xyz => $valu) {
        if(!in_array($val, $arr)){
            //echo $val."  ";echo $valu;
            $arr[]=$val;     
        }               
    }
}

问题是我的数组编号只打印第一个值正在重复 对于两个

Potrait Color Correction 060716113223-13555

提取060716113223-13555

我正在寻找类似 TO Echo 的东西

Potrait Color Correction 060716113223-13555
Extraction 49101220160607-25222

【问题讨论】:

  • 如果数组顺序相同,则可以使用类似:array_combine();
  • 是的,但问题是我需要单独打印数据,因为我需要将其放入表中的两个单独的列中
  • 你可以做一个 foreach 循环。第一个数组中的值将是键,第二个数组中的值将是它的值。然后就可以随意打印了。

标签: php arrays codeigniter echo


【解决方案1】:

使用for循环访问多个数组:

for($i=0;$i<count($name);$i++) {
  echo $name[$i]." ".$number[$i]."<br />";
}

输出:

Potrait Color Correction 060716113223-13555

Extraction 49101220160607-25222

【讨论】:

    【解决方案2】:

    只需使用第一个且唯一的foreach 中的索引来引用第二个数组,如下所示

    $name   = Array ( [1] => Potrait Color Correction [2] => Extraction ) 
    $number = Array ( [1] => 060716113223-13555       [2] => 49101220160607-25222 )
    

    代码

    $arr = [];
    foreach ($name as $idx => $val) {
        if(!in_array($val, $arr)){
            echo $val . '  ' . $number[$idx] . '<br>';
            $arr[]=$val;     
        }               
    }
    

    或者,如果这是一个 CLI 脚本,请使用 PHP_EOF 而不是 &lt;br&gt;

    【讨论】:

    • 感谢工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 2012-05-07
    • 1970-01-01
    • 2017-08-29
    • 1970-01-01
    • 2013-10-13
    相关资源
    最近更新 更多