在 foreach 循环中包含文件 php

Include file in foreach loop php

我有一个id数组,对于每个id,我想包含一个文件,并将id发送到include-file,但是在第一个id之后,其他id都是空的。为什么其他 ID 没有通过包含文件传递?

    $ids = array(1, 2, 3);
    foreach($ids as $id) {
         $id = $id;
         include_once("file.php");
         echo $path . "<br />"; // comes from include-file
    }

当我在包含文件中回显我的 $id 时,我得到“1”,但其他两个 id 是空的?

你有这个问题,因为你正在使用 inlcude_once,这正是顾名思义,它只包含你的文件一次。

你需要include。顺便说一下,您可以删除 $id=$id;,因为您已经在此处的 foreach 中定义了 $id:foreach( $ids as $id ).

试试这个:

$ids = array( 1, 2, 3 );
foreach( $ids as $id ) {
    include( "file.php" );
    echo $path . "<br />"; // comes from include-file
}