在php代码中生成多个Div


Generate Multiple Divs within php code

目前,我正试图遍历一个目录,获取所有14个文件名,并使用这些文件名生成一些html。我遇到了在PHP中创建HTML元素的问题,现在我正试图生成一个HTML div,其中包含一个图像和14次下面的一行文本。

我曾尝试在HTML元素前后放置空的php标记,但没有成功,因为PHP不允许在另一个php元素中使用php元素。

<?php   
$dir = "classes/1961/*";
     foreach(glob($dir) as $file)
          {
             <?php 
             ?>
                  <div class="cell-1-9">
                       <img src="images/image.jpg">
                       <p>Dylan Miller</p>
                  </div>
             <?php
             ?>   
          }
?>   

我需要另一种在PHP中生成HTML元素的方法。

您只需要关闭<?php标签就可以恢复到html:

<?php   
$dir = "classes/1961/*";
     foreach(glob($dir) as $file)
          {
             ?>
                  <div class="cell-1-9">
                       <img src="<?php echo $file ?>">
                       <p>Dylan Miller</p>
                  </div>
              <?php
          }
?>   
<?php   
$dir = "classes/1961/*";
 foreach(glob($dir) as $file)
      { 
        ?>
              <div class="cell-1-9">
                   <img src="images/image.jpg">
                   <p>Dylan Miller</p>
              </div>
         <?php   
      }
?>   

尝试HEREDOC语法。我正在粘贴用户1477388的更正代码:关闭HTML;不得缩进。

<?php   
$dir = "classes/1961/*";
 foreach(glob($dir) as $file)
      {
         echo <<<HTML
              <div class="cell-1-9">
                   <img src="{$file}">
                   <p>{$file}</p>
              </div>
HTML;
      }
?>  

如我的MVC项目PHP One中的示例所示,您可以使用所谓的HEREDOC语法:

<?php
foreach($Model as $movie)
{
    echo <<<HTML
        <li class="list-group-item">
            <strong>{$movie->Title}</strong> ({$movie->Rating}) - {$movie->ReleaseDate}
        </li>
HTML;
}
?>

根据您的代码进行调整,尝试以下操作:

<?php   
$dir = "classes/1961/*";
 foreach(glob($dir) as $file)
      {
         echo <<<HTML
              <div class="cell-1-9">
                   <img src="{$file}">
                   <p>{$file}</p>
              </div>
HTML;
      }
?>   

参考。https://github.com/DominicArchual/Php-One#define-您的视图

脚注:学习MVC会让你成为一个更好的开发人员;也更有价值。