Rumah > pembangunan bahagian belakang > tutorial php > 为什么每次多出来两个div?

为什么每次多出来两个div?

WBOY
Lepaskan: 2016-08-18 09:16:06
asal
1414 orang telah melayarinya

我在外面套了一个div 为什么又多出来两个空的div呢 为什么每次总是多出来两个空的东西呢?这是哪里的原因呢?怎么样才能去掉呢?
为什么每次多出来两个div?

<code>$dir = "upload/"; 
    if (is_dir($dir)){
       if ($dh = opendir($dir)){
         while (($file = readdir($dh))!= false){
            echo '<div>';
            if (!is_dir($file)) {
              $filePath = $dir.$file;
              echo "<img  src="%22.%24filePath.%22" alt="为什么每次多出来两个div?" >";
            }
            echo '</div>';
         }
        closedir($dh);
       }
    }</code>
Salin selepas log masuk
Salin selepas log masuk

回复内容:

我在外面套了一个div 为什么又多出来两个空的div呢 为什么每次总是多出来两个空的东西呢?这是哪里的原因呢?怎么样才能去掉呢?
为什么每次多出来两个div?

<code>$dir = "upload/"; 
    if (is_dir($dir)){
       if ($dh = opendir($dir)){
         while (($file = readdir($dh))!= false){
            echo '<div>';
            if (!is_dir($file)) {
              $filePath = $dir.$file;
              echo "<img  src="%22.%24filePath.%22" alt="为什么每次多出来两个div?" >";
            }
            echo '</div>';
         }
        closedir($dh);
       }
    }</code>
Salin selepas log masuk
Salin selepas log masuk

打印下

<code>print_r(readdir($dh));</code>
Salin selepas log masuk

就知道为什么了。

readdir 会打印出 . 和 .. ,所以你的 echo "

"应该放在if !is_dir里边

多出来的两个应该是当前目录的 . 和上级目录的 .. 你把这个两个过滤掉就行

做个if判断就好了

<code class="php">
$dir = "upload/"; 
if (is_dir($dir)){
   if ($dh = opendir($dir)){
     while (($file = readdir($dh))!= false){
        if (!is_dir($file)) {
        
          //. 和.. 在文件夹下,不管在什么系统中. 和..都是存在的, .指向当前目录, ..上一级目录
          if ($file === '.' || $file === '..') {
              continue;
          }
          
          echo '</code>
Salin selepas log masuk
'; $filePath = $dir.$file; echo "为什么每次多出来两个div?"; echo ''; } } closedir($dh); } }
Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan