Php 使用foreach循环组合多个数组

Php 使用foreach循环组合多个数组,php,arrays,json,Php,Arrays,Json,我有以下代码: foreach(array_combine($names, $hashids) as $name => $hashid) { echo '<tr> <td>'.$counter.'</td> <td>'.$name.'</td> <td>'.$hashid.'</a></td> </tr>'; } 但是上面的代码给了我错误。我得到的错误是 解析错误:语法错误,第58

我有以下代码:

foreach(array_combine($names, $hashids) as $name => $hashid) {
echo '<tr>
<td>'.$counter.'</td>
<td>'.$name.'</td>
<td>'.$hashid.'</a></td>
</tr>';
}
但是上面的代码给了我
错误
。我得到的错误是

解析错误:语法错误,第58行的/homepages/4/d864452909/htdocs/public_html/app/index.php中出现意外的“=>”(T_双箭头),应为“')


如果我是你,我会用simple
foreach()
loop这样做

<?php
$names = ['Sample','Big Buck Bunny 60fps 4K - Official Blender Foundation Short Film.mp4'];
$hashid = ['JdpmLLdx5me7K','lWJQjwrVRZdXn'];
$photoids = ['url_1_of_the_image','url_2_of_the_image'];
$result = [];
foreach ($names as $key => $value) {
    $result[$key] = array(
        'name'  => $names[$key],
        'hashid' => $hashid[$key],
        'photoid'    => $photoids[$key],
    );
}
foreach($result as $k => $v) {
    echo '<tr>
         <td>'.$k.'</td>
         <td>'.$v['name'].'</td>
         <td>'.$v['hashid'].'</td>
         <td>'.$v['photoid'].'</td>
         </tr>';
}

如果我是你,我会用简单的
foreach()
循环

<?php
$names = ['Sample','Big Buck Bunny 60fps 4K - Official Blender Foundation Short Film.mp4'];
$hashid = ['JdpmLLdx5me7K','lWJQjwrVRZdXn'];
$photoids = ['url_1_of_the_image','url_2_of_the_image'];
$result = [];
foreach ($names as $key => $value) {
    $result[$key] = array(
        'name'  => $names[$key],
        'hashid' => $hashid[$key],
        'photoid'    => $photoids[$key],
    );
}
foreach($result as $k => $v) {
    echo '<tr>
         <td>'.$k.'</td>
         <td>'.$v['name'].'</td>
         <td>'.$v['hashid'].'</td>
         <td>'.$v['photoid'].'</td>
         </tr>';
}

您可以按如下方式合并对象

$arr = array();

foreach ($names as $value) {
    array_push($arr, $value);
}

for($x = 0; $x < count($arr); $x++) {
  foreach($arr[$x] as $y => $val) {
    $arr[$x] = (object) array_merge((array) $arr[$x], (array) $hashids[$x]);
    $arr[$x] = (object) array_merge((array) $arr[$x], (array) $photoids[$x]);
  }
}

for($x = 0; $x < count($arr); $x++) {
echo '<tr>
<td>'.$arr[$x]->counter.'</td>
<td>'.$arr[$x]->name.'</td>
<td>'.$arr[$x]->hashid.'</td>
<td>'.$arr[$x]->photoid.'</td>
</tr>';
}

$arr=array();
foreach($name作为$value){
数组推送($arr,$value);
}
对于($x=0;$x$val){
$arr[$x]=(对象)数组_merge((数组)$arr[$x],(数组)$hashids[$x]);
$arr[$x]=(对象)数组_merge((数组)$arr[$x],(数组)$photoids[$x]);
}
}
对于($x=0;$x计数器。”
“.$arr[$x]->name”
“.$arr[$x]->hashid”
“.$arr[$x]->photoid”
';
}

您可以按如下方式合并对象

$arr = array();

foreach ($names as $value) {
    array_push($arr, $value);
}

for($x = 0; $x < count($arr); $x++) {
  foreach($arr[$x] as $y => $val) {
    $arr[$x] = (object) array_merge((array) $arr[$x], (array) $hashids[$x]);
    $arr[$x] = (object) array_merge((array) $arr[$x], (array) $photoids[$x]);
  }
}

for($x = 0; $x < count($arr); $x++) {
echo '<tr>
<td>'.$arr[$x]->counter.'</td>
<td>'.$arr[$x]->name.'</td>
<td>'.$arr[$x]->hashid.'</td>
<td>'.$arr[$x]->photoid.'</td>
</tr>';
}

$arr=array();
foreach($name作为$value){
数组推送($arr,$value);
}
对于($x=0;$x$val){
$arr[$x]=(对象)数组_merge((数组)$arr[$x],(数组)$hashids[$x]);
$arr[$x]=(对象)数组_merge((数组)$arr[$x],(数组)$photoids[$x]);
}
}
对于($x=0;$x计数器。”
“.$arr[$x]->name”
“.$arr[$x]->hashid”
“.$arr[$x]->photoid”
';
}

共享它返回的内容
打印(数组组合($names,$hashids,$photoid))
@Always我在问题中添加了nny。不,你没有。我的意思是在
foreach
循环之前打印这三个数组合并的结果并与共享us@AlwaysSunny对于三个数组值,它不返回任何内容。但是对于两个数组组合,它返回下面的代码>数组([Simult]=JDPMLLDX5ME7K [大巴克兔子60fps 4K-官方搅拌器基础短片,MP4]=LWJQJWRZZDXN)< /代码>,我想指出的是,ARARY-YAN组合并没有立即组合3个数组。因此,您需要与我们共享完整的代码,以便我们可以帮助您。:)请参见此处:共享此返回的内容
print_r(数组组合($names、$hashids、$photoid))
@Always我在问题中添加了nny。不,你没有。我的意思是在
foreach
循环之前打印这三个数组合并的结果并与共享us@AlwaysSunny对于三个数组值,它不返回任何内容。但是对于两个数组组合,它返回下面的代码>数组([Simult]=JDPMLLDX5ME7K [大巴克兔子60fps 4K-官方搅拌器基础短片,MP4]=LWJQJWRZZDXN)< /代码>,我想指出的是,ARARY-YAN组合并没有立即组合3个数组。因此,您需要与我们共享完整的代码,以便我们可以帮助您。:)看这里:谢谢!“成功了!”安迪很高兴这对你有帮助:)谢谢!“真管用!”安迪很高兴这对你有帮助:)