2017-06-08 1 views
1

私は、削除リストを作りたいけどmp3とMP4ファイルを除くmp3とmp4拡張子を持つファイルを除いて、現在のファイルを「リストを削除する」に追加する方法は? E中)(未定義の関数endsWithに呼び出します: xamppの htdocsに TES インデックス

私のコードは

エラー 致命的なエラーです。ライン上でPHP 39

$files = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator($rootPath), 
    RecursiveIteratorIterator::LEAVES_ONLY 
); 

foreach ($files as $name => $file) 
{ 
    // Skip directories (they would be added automatically) 
    if (!$file->isDir()) 
    { 
     // Get real and relative path for current file 
     $filePath = $file->getRealPath(); 
     $relativePath = substr($filePath, strlen($rootPath) + 1); 

     // Add current file to archive 
     $zip->addFile($filePath, $relativePath); 
     $zip->close(); 

     // Add current file to "delete list" 
     // delete it later cause ZipArchive create archive only after calling close function and ZipArchive lock files until archive created) 
     if ($file->getFilename().endsWith(".mp3")) error at this code 
     { 
      $filesToDelete[] = $filePath; 
     } 
    } 
} 

誰もが

+0

、ファイルのMIMEタイプをチェックし、ファイルの拡張子(例:.MP3)されている信頼性の低い – Sepultura

+0

そのはできません解決する –

+0

あなたは 'php-5.3'タグを指定したことに気付きました。このPHPのバージョンは非常に古く、サポートされていないことに注意してください。セキュリティの問題を避けるためには、バージョン5.6以上にアップグレードすることを緊急に検討する必要があります。 – Simba

答えて

0

ザ・は何のendsWith機能ではありません、私を助けてください。自分で作成する必要があります。この例を確認してください。

startsWith() and endsWith() functions in PHP

+0

私はどうしたらいいですか? –

+0

私のコメントのリンクを確認してください。この機能を実装する方法はありますか? –

1

ここでも、ファイル拡張子をチェックすることは信頼できないです。ファイルのMIMEタイプは、mime_content_typeで確認する必要があります。

// Add current file to "delete list" 
     // delete it later cause ZipArchive create archive only after calling close function and ZipArchive lock files until archive created) 
     if (mime_content_type($filePath) == "audio/mp3")) 
     { 
      $filesToDelete[] = $filePath; 
     } 

をしかし、mp3のためのさまざまなMIMEタイプの多くをそこにいるので、あなたがhereを見ることができるように、気をつけこと:あなたのコードで

、あなたはこのような何かを行うことができます。

編集: 複数mime_typesをチェックするためにwan't場合はin_arrayを使用することができます。

if(in_array(mime_content_type($filePath), ['audio/mp3','audio/mpeg'])) 
+0

mimeの種類を調べても、信頼性が低く危険ですが、少なくともファイル拡張子よりも優れています。 – Simba

+0

2つのタイプを追加するには?平均オーディオ/ mp3とビデオ/ mp4以上 –

+0

私の編集を参照してください、in_arrayを使用してください – Sepultura

関連する問題