0

2つの異なるファイル拡張子.gzと.binに一致する特定のフォルダー内のすべてのファイルを検索したい

私は次のようなFolder::find関数を使用しています。

$dir = new Folder('/home/');
$files = $dir->find('.*\.gz');
if($files == null || empty($files))
{
    $this->set('files', "No Files Found");
    echo "empty";
}
else
{
    $this->set('files', $files);
}

検索関数の正規表現を調整して両方を検索するにはどうすればよいですか?

また、ifステートメントで設定したビュー変数$ filesは、何も見つからない場合は機能しません。ディレクトリにファイルがある場合は機能しますが、ファイルがない場合は「ファイルが見つかりません」と表示されません。「空」というテキストをエコーし​​ますが、変数は設定しません。

ありがとう

4

1 に答える 1

0

複数のファイルタイプを探すには、|を使用することがわかりました。正規表現の演算子。'。.gz|。.bin'->これをくれたflecに感謝します。

ビュー内の$files変数で発生していた問題は、それを選択入力のオプションとして使用していたことでした。

文字列に直接設定する代わりに、文字列が空の場合は、配列内にテキスト値を持つ要素を作成するだけです。

    if($files == null || empty($files))
    {
        $files[0] = "No Files Found";
        $this->set('files', $files);
    }
    else
    {
        $this->set('files', $files);
    }
于 2012-08-08T13:50:22.187 に答える