テクノロジーが人生を変える - 動画ディレクトリ検証ツール (php)_PHP チュートリアル
調和が溢れているこの時代、映画をダウンロードするのは簡単ではありません。そのため、2 台の 1T ハード ドライブに 600 本近くの映画が保存されているので、多くの同僚や友人がそれを知り、求め始めました。 . 映画をコピーするためにハードディスクを借りたので、問題が発生しました...
ハードドライブのロックがないため、誤って切断したり削除したりするなど、ハードドライブを「改ざん」するかどうかを制御できません。次のように、ムービーディレクトリを記録する特別なtxtファイルがありますが、
しかし、一つ一つ確認していくと時間の無駄になるだけでなく、疲れて読み逃してしまうことにもつながります。この場合、私の専門スキルを使って私のニーズを実現し、それを実行してみてはいかがでしょうか。
まず、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

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











CのDMAとは、直接メモリアクセステクノロジーであるDirectMemoryAccessを指し、ハードウェアデバイスがCPU介入なしでメモリに直接データを送信できるようにします。 1)DMA操作は、ハードウェアデバイスとドライバーに大きく依存しており、実装方法はシステムごとに異なります。 2)メモリへの直接アクセスは、セキュリティリスクをもたらす可能性があり、コードの正確性とセキュリティを確保する必要があります。 3)DMAはパフォーマンスを改善できますが、不適切な使用はシステムのパフォーマンスの低下につながる可能性があります。実践と学習を通じて、DMAを使用するスキルを習得し、高速データ送信やリアルタイム信号処理などのシナリオでその効果を最大化できます。

CでChronoライブラリを使用すると、時間と時間の間隔をより正確に制御できます。このライブラリの魅力を探りましょう。 CのChronoライブラリは、時間と時間の間隔に対処するための最新の方法を提供する標準ライブラリの一部です。 Time.HとCtimeに苦しんでいるプログラマーにとって、Chronoは間違いなく恩恵です。コードの読みやすさと保守性を向上させるだけでなく、より高い精度と柔軟性も提供します。基本から始めましょう。 Chronoライブラリには、主に次の重要なコンポーネントが含まれています。STD:: Chrono :: System_Clock:現在の時間を取得するために使用されるシステムクロックを表します。 STD :: Chron

Cのスレッドパフォーマンスの測定は、標準ライブラリのタイミングツール、パフォーマンス分析ツール、およびカスタムタイマーを使用できます。 1.ライブラリを使用して、実行時間を測定します。 2。パフォーマンス分析にはGPROFを使用します。手順には、コンピレーション中に-pgオプションを追加し、プログラムを実行してGmon.outファイルを生成し、パフォーマンスレポートの生成が含まれます。 3. ValgrindのCallGrindモジュールを使用して、より詳細な分析を実行します。手順には、プログラムを実行してCallGrind.outファイルを生成し、Kcachegrindを使用して結果を表示することが含まれます。 4.カスタムタイマーは、特定のコードセグメントの実行時間を柔軟に測定できます。これらの方法は、スレッドのパフォーマンスを完全に理解し、コードを最適化するのに役立ちます。

AIは、作曲家の使用を最適化するのに役立ちます。特定の方法には次のものが含まれます。1。依存関係管理の最適化:AIは依存関係を分析し、最適なバージョンの組み合わせを推奨し、競合を減らします。 2。自動コード生成:AIは、ベストプラクティスに準拠したComposer.jsonファイルを生成します。 3.コードの品質を改善する:AIは潜在的な問題を検出し、最適化の提案を提供し、コードの品質を向上させます。これらの方法は、開発者が効率とコードの品質を向上させるのに役立つ機械学習および自然言語処理技術を通じて実装されています。

安全かつ徹底的にMySQLをアンインストールし、すべての残留ファイルをクリーンにするには、次の手順に従ってください。1。MySQLサービスを停止します。 2。MySQLパッケージをアンインストールします。 3.構成ファイルとデータディレクトリのクリーン。 4.アンインストールが徹底していることを確認します。

Cは、リアルタイムオペレーティングシステム(RTOS)プログラミングでうまく機能し、効率的な実行効率と正確な時間管理を提供します。 1)Cハードウェアリソースの直接的な動作と効率的なメモリ管理を通じて、RTOのニーズを満たします。 2)オブジェクト指向の機能を使用して、Cは柔軟なタスクスケジューリングシステムを設計できます。 3)Cは効率的な割り込み処理をサポートしますが、リアルタイムを確保するには、動的メモリの割り当てと例外処理を避ける必要があります。 4)テンプレートプログラミングとインライン関数は、パフォーマンスの最適化に役立ちます。 5)実際のアプリケーションでは、Cを使用して効率的なロギングシステムを実装できます。

Cコードの最適化は、次の戦略を通じて実現できます。1。最適化のためにメモリを手動で管理する。 2。コンパイラ最適化ルールに準拠したコードを書きます。 3.適切なアルゴリズムとデータ構造を選択します。 4.インライン関数を使用して、コールオーバーヘッドを削減します。 5.コンパイル時に最適化するために、テンプレートメタプログラムを適用します。 6.不要なコピーを避け、移動セマンティクスと参照パラメーターを使用します。 7. constを正しく使用して、コンパイラの最適化を支援します。 8。std :: vectorなどの適切なデータ構造を選択します。

MySQLで文字セットと照合を構成する方法は次のとおりです。1。サーバーレベルでの文字セットとコレクションの設定:setNames'utf8 '; setCharacterSetutf8; setCollation_connection = 'utf8_general_ci'; 2。特定の文字セットと照合を使用するデータベースを作成します:createdatabaseexample_dbcharactersetutf8collateutf8_general_ci; 3.テーブルを作成するときに文字セットとコレクションを指定:createTableExample_table(idint
