0

画像カウントが1の場合、このdivを表示するというディレクトリからの画像に条件を付けたいと思います。しかし、条件を適用した後、条件が適切に実行されません。この問題を解決するのを手伝ってください:私のコードは以下のとおりです:

 <?php

    $id = 115; 
    $path_image = "pageimage/".$id."/";
            if(file_exists($path_image)){ 
            $dir =  dir($path_image);


    //List files in images directory
    while (($file =  $dir->read()) !== false){
   if($file>=1){  
    ?>
    <div id="middleimg" style="background:url(<?php echo $path_image.$file; ?>); background-repeat:no-repeat;">


      <div id="nav">
        <div id="navinner">
          <ul>
            <?php
                                    foreach($pageMenu as $pmenu){
                                    $url = generateURL($pmenu->custom_url, $pmenu->page_friendlyname, $pmenu->page_title, $pmenu->page_id);?>
            <li><a href="<?php echo $url; ?>"><?php echo $pmenu->page_name; ?> </a> </li>
            <?php } ?>
            <!--<li><a href="index.php">HOME</a></li>
            <li><a href="aboutus.php">ABOUT</a></li>
            <li><a href="menu.php">MENU</a></li>
            <li><a href="#">LOCATION</a></li>
            <li><a href="deliverly.php">DELIVERY</a></li>
            <li><a href="#">SPECIAL OFFER</a></li>
            <li><a href="#">CONTACT</a></li>-->
          </ul>
        </div>
      </div>
      <div id="banner-containerhome">
        <div id="promoBanner">
          <!--<div id="pizza">-->
          <div id="wowslider-container1">
        <div class="ws_images">
    <span><img src="data1/images/banner.jpg" alt="" title="" id="wows0"/></span>
    <span><img src="data1/images/banner.jpg" alt="" title="" id="wows0"/></span>
    </div>
    <div class="ws_bullets"><div>
    <a href="#wows0" title=""><img src="data1/tooltips/banner.jpg" alt=""/>1</a>
    <a href="#wows1" title=""><img src="data1/tooltips/chrysanthemum.jpg" alt=""/>2</a>
    </div></div>
        <div class="ws_shadow"></div>
        </div>
        <script type="text/javascript" src="engine1/script.js"></script>

         <!-- </div>-->

        </div>
          <div class="rightcontents">
          <?php 

     echo $page_content[1]->page_content;

          ?>
          </div>
      </div>
    </div>
    <?php }}} ?>
4

1 に答える 1

0

いくつかあります...

1.- read()はディレクトリをイテレータとして読み取り、ファイル名を返します。試しましたecho $file;か?

if($file >= 1)$ fileは常に文字列であり、整数ではないため、真になることはありません。そこで比較しますif("myfilename.ext" >= 1)

合計ファイル数を数えるには、ディレクトリ全体を調べてカウンターを使用し、ファイルごとに増やしていく必要があります。

またはscandir("myPath")、配列として指定されたパス内のすべてのファイルを取得する関数を使用できます。例えば:

$dir = scandir("myDir");
$total = count($dir); // this gives you the lenght of the array, therefore the files.

カウント中は、親ディレクトリとルートディレクトリも「ファイル」としてカウントされることに注意してください。一部のメソッドでは、thumbs.db(windows)またはDS_store(osx)も、フォルダの並べ替え方法に関する情報を格納する隠しファイルです。フォルダアイコンなどもカウントされるので、スキップするにはIfステートメントを追加することを忘れないでください。

于 2012-11-27T08:35:48.763 に答える