2016-11-10 22 views
1

私は、特定のディレクトリからテーブルにファイルを出力する小さなスクリプトでいくつかの問題を抱えていますが、Mac上でこのアプリケーションを実行しているときに迷惑な.DS_storeファイルを出力します。scandir()から.DS_storeを隠す

私のスクリプトは次のとおりです。スクリプトを完全に停止するか、または何もしないというさまざまな方法を試しました。

<?php 

echo '<table>'; 

$dir = 'archive/'; 
$files = scandir($dir, 0); 
for($i = 2; $i < count($files); $i++) 
    echo '<tr> 
      <td>' . $files[$i]. '</td> 
      <td><a href="' . $files[$i]. '" download><button>Download</button></a> 
      <a href=""></a></td> 
      </tr>'; 

echo '</table>'; 

?> 
+0

if($ files [$ i]!= '.DS_store') ' –

答えて

1

「。」で始まるすべてのファイルを無視することができます。

._whatever:これらのファイルは、HFSをネイティブにサポートしていないボリューム上に作成されます。

.Trash:ゴミ箱にスローされたファイルを保存するために使用されますが、まだ削除されていません。

.Spotlight-V100:Spotlightのメタデータインデックスとインデックスルールを格納します。

<?php 

echo '<table>'; 

$dir = 'archive/'; 
$files = scandir($dir, 0); 
for($i = 2; $i < count($files); $i++) 
    if (preg_match("/^[^\.].*$/", $files[$i])) { 
    echo '<tr> 
     <td>' . $files[$i]. '</td> 
     <td><a href="' . $files[$i]. '" download><button>Download</button></a> 
     <a href=""></a></td> 
     </tr>'; 
    } 
echo '</table>'; 
?> 
+0

これは完璧で、私が探していたものです!それはあなたが今それに来る方法を意味する、私はほとんどpre_matchを使用していたが、あなたの答えごとにIFステートメントにする必要があった。 – PhpDude

関連する問題