それで、私は初めてPHP開発を始めました。HTML DOM ナビゲーション/解析ライブラリを使用しようとしています。私はガノンを選びましたが、最終的にどちらを使用するかはあまり気にしません。
しかし、PHP はこれまでに見た他のすべてのコーディング言語とは根本的に異なることにすぐに気付きました。これは、エラー処理を見れば明らかです。含まれているクラス/スクリプトがエラーを出力するだけの場合、try/catch で単純にキャッチすることはできません。ここで起こっていることだと私は信じています。file_get_dom に実行するように指示したのは私ですが、制御できません。やりたいことは何でもでき、結果の HTML ファイルに書きたいことは何でもできます。
これは悪い習慣ですか、それは確かに私を台無しにしています。解決策は何ですか?書き込もうとしているテキストをキャッチできますか (非表示の div で囲みます)。しかし、このクラスが必要なものを書くのを止めたいと同時に、エラーが発生したかどうかを知り、適切な手順を実行できるようにすることも必要です。
注: 独自のエラーをスローしたり、「or die」を使用したりしても、さらにテストを実行すると、期待どおりの結果が得られません。したがって、Try/Catch の使用方法がまったくわからないだけかもしれませんが、いくつかのチュートリアルでこのように使用されているのを見たことがあります。しかし、これが構文エラーであっても、含まれているクラスを制御してhtmlファイルを汚染しないようにする方法については、私の最初の質問が残っています。
<?php
try{
include_once('ganon.php');
}catch(Exception $e){ echo "OUT: $e->getMessage()"; }
class GamesSummery{
public function __construct(){
try{
$html = file_get_dom('web site adress');
}catch(Exception $e){ echo "Main: $e->getMessage()"; }
}
} $test = new GamesSummery();
出力:
「致命的なエラー: 238 行目の C:\xampp\htdocs\hockey\ganon.php で最大実行時間が 30 秒を超えました」
また
「警告: file_get_contents(): C:\xampp\htdocs\hockey\ganon.php の 19 行目のファイル名を空にすることはできません」