ホームページ  >  記事  >  バックエンド開発  >  テクノロジーが人生を変える - 動画ディレクトリ検証ツール (php)_PHP チュートリアル

テクノロジーが人生を変える - 動画ディレクトリ検証ツール (php)_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:46:57880ブラウズ

調和が溢れているこの時代、映画をダウンロードするのは簡単ではありません。そのため、2 台の 1T ハード ドライブに 600 本近くの映画が保存されているので、多くの同僚や友人がそれを知り、求め始めました。 . 映画をコピーするためにハードディスクを借りたので、問題が発生しました...

ハードドライブのロックがないため、誤って切断したり削除したりするなど、ハードドライブを「改ざん」するかどうかを制御できません。次のように、ムービーディレクトリを記録する特別なtxtファイルがありますが、

テクノロジーが人生を変える - 動画ディレクトリ検証ツール (php)_PHP チュートリアル

しかし、一つ一つ確認していくと時間の無駄になるだけでなく、疲れて読み逃してしまうことにもつながります。この場合、私の専門スキルを使って私のニーズを実現し、それを実行してみてはいかがでしょうか。

まず、txt ファイルからムービーディレクトリを読み取り、php 配列として保存する必要があります

$fp = fopen('D:movieList.txt','r');

for($i=0; $i

$arr[] = トリム(substr(fgets($fp),4));

}

fclose($fp);

このうち、562 は txt ファイルの行数です。ムービーごとに 1 行しか保存しないためです。ストレージ ディレクトリの最初の 4 文字は DVD、BD、MKV などのビデオ定義タイプであるため、substr(fgets($fp),4) を使用して最初の 4 文字を削除し、trim を使用して先頭と 4 文字を削除します。このように末尾のスペース。最終的に配列に格納された映画のタイトルには、他の文字は含まれません。

次に行うことは、モバイルハードディスク下のムービーディレクトリを読み取ることです。ここで私が探しているのは、オンラインでフォルダーの下にあるファイル名を読み取る機能です。

関数 myreaddir($dir){

$handle = opendir($dir);

$i = 0;

While($file=readdir($handle)){

If(($file != ". ")&&($file != ".. ")){

$list[$i] = $file;

$i = $i+1;

}

}

Closedir($handle);

$list を返します;

}

$movie = myreaddir("I:映画");

この方法には、サブファイルの下にあるファイルを読み取ることができないという欠点がありますが、興味があれば、これをベースに拡張することができます。

次に、検証プロセスが始まります

foreach($arr as $v){

$f = false;

foreach($movie as $vv){

If(strstr($vv,$v)!=""){

$f = true;

}

}

もし(!$f){

echo $v."
";

}

}

検証の中心となる方法は、文字列 A に文字列 B が含まれているかどうか、つまり、ムービー ファイル名にムービー ディレクトリ内のタイトルが含まれているかどうかを判断することです。含まれていない場合は、それを出力します。

テストの結果、正解率は基本的に 80% ですが、バグがあります。たとえば、映画ディレクトリに「Chainsaw」という映画がありますが、フォルダーに「Chainsaw 1024*768.rmvb」がありません。 「「Chainsaw 1024*768.rmvb」というムービーがあるので、プログラムは通ります。

唯一の解決策は、ムービー ディレクトリを記録するときに完全なファイル名を記録することです。「チェーンソー」だけを記録するのではなく、「チェーンソー 1024*768」を記録するか、単にファイル形式を記録して、検証中に文字列の比較ができるようにします。直接実行されました。

より良い解決策があれば、ぜひ教えてください。

元のアドレス: http://www.cnblogs.com/hooray/archive/2011/10/30/2228990.html

http://www.bkjia.com/PHPjc/478554.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/478554.html技術記事調和が溢れているこの時代、映画をダウンロードするのは簡単ではないので、2 台の 1T ハードドライブに 600 本近くの映画を集めたので、多くの同僚がいます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。