Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将两个foreach循环合并为一个,并将其解析为表行_Php_Xml_Foreach_Html Table - Fatal编程技术网

Php 将两个foreach循环合并为一个,并将其解析为表行

Php 将两个foreach循环合并为一个,并将其解析为表行,php,xml,foreach,html-table,Php,Xml,Foreach,Html Table,我正在编写一个php/html代码,如下所示,我想将两个php代码合并为一个 第一个foreach循环: 第二个foreach循环: 合并应该是这样的: <tr> <td style="width:8%; text-align:center;">'.$program["series_title"].'</td> <td style="width:8%; text-align:center;">'.$program["episode_

我正在编写一个php/html代码,如下所示,我想将两个php代码合并为一个

第一个foreach循环:

第二个foreach循环:

合并应该是这样的:

 <tr>

   <td style="width:8%; text-align:center;">'.$program["series_title"].'</td>
   <td style="width:8%; text-align:center;">'.$program["episode_title"].'</td>

   <td style="width:8%; text-align:center;"> <?php echo basename($file, ".mp4"); ?></td>
   <td style="width:8%; text-align:center;"><?php echo date("H:i:s",filemtime("incoming_folder/$file")); ?></td>
   <td style="width:8%; text-align:center;"> <?php echo basename($file); ?></td>

 </tr>
我试过这样的东西,但似乎不起作用

 foreach(array_combine($programs, $mp4_files) as $f => $n) {
    echo $f.$n;
    echo "<br/>";
}
问题陈述:


我想知道,为了能够成功地合并两个foreach循环,我应该在上面尝试过的php代码中做些什么更改

假设两个数组具有相同的键,则可以使用一个数组的键访问另一个数组的匹配值。例如:

<?php
foreach ($programs as $key => $program)    { 
   $file = $mp4_files[$key];
?>
   <tr>
   <td style="width:8%; text-align:center;"><?php echo $program["series_title"]; ?></td>
   <td style="width:8%; text-align:center;"><?php echo $program["episode_title"]; ?></td>    
   <td style="width:8%; text-align:center;"><?php echo basename($file, ".mp4"); ?></td>
   <td style="width:8%; text-align:center;"><?php echo date("H:i:s",filemtime("incoming_folder/$file")); ?></td>
   <td style="width:8%; text-align:center;"> <?php echo basename($file); ?></td>    
   </tr>
<?php } ?>

$programs和$mp4\u文件的值是否相同?当我打印$r\u文件时;它只显示一个mp4文件,而应该有三个。每个程序是否有多个mp4文件?目前正在打印$mp4文件;我得到的数组[2]=>36017P.mp4[4]=>36031P.mp4[6]=>hello.mp4假设需要将$mp4_文件索引为0,1,2,那么在循环之前使用$mp4_文件=数组_值$mp4_文件@我很抱歉没有回应-我不得不在电脑之外处理一些事情。我发现问题是我所怀疑的:$programs和$mp4_文件以及不同的密钥;这就是为什么我要看打印结果。我很高兴奈杰尔能为你指出解决问题的正确方法。
 foreach(array_combine($programs, $mp4_files) as $f => $n) {
    echo $f.$n;
    echo "<br/>";
}
<?php
foreach ($programs as $key => $program)    { 
   $file = $mp4_files[$key];
?>
   <tr>
   <td style="width:8%; text-align:center;"><?php echo $program["series_title"]; ?></td>
   <td style="width:8%; text-align:center;"><?php echo $program["episode_title"]; ?></td>    
   <td style="width:8%; text-align:center;"><?php echo basename($file, ".mp4"); ?></td>
   <td style="width:8%; text-align:center;"><?php echo date("H:i:s",filemtime("incoming_folder/$file")); ?></td>
   <td style="width:8%; text-align:center;"> <?php echo basename($file); ?></td>    
   </tr>
<?php } ?>