【PHP8.x】strictErrorCheckingプロパティの使い方
strictErrorCheckingプロパティの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
strictErrorCheckingプロパティは、DOMDocumentオブジェクトがXMLやHTML文書をパース(解析)する際のエラーチェックの厳格さを制御するためのプロパティです。DOMDocumentクラスに属しており、主にXMLやHTML文書をプログラムで操作する際に利用されます。
このプロパティのデフォルト値はtrueであり、厳格なエラーチェックが行われます。trueに設定されている場合、DOMDocumentオブジェクトは読み込む文書の構文規則に厳密に従います。例えば、要素名や属性値にXML/HTMLの仕様で許可されていない不正な文字が含まれる場合など、構文エラーが検出されると処理を中断し、エラーを発生させます。これは、不正な文書によってアプリケーションが予期せぬ動作をすることを防ぎ、高い品質と安全性を確保するために非常に重要です。
一方、このプロパティをfalseに設定すると、DOMDocumentオブジェクトは構文エラーを厳しくチェックせず、エラーを無視して可能な限り文書のパースを試みます。これにより、多少の構文エラーが含まれる文書でも読み込みを続行できるようになり、柔軟な処理が可能になります。しかし、その結果として生成されるDOMツリーが不完全であったり、期待通りの構造にならない可能性があるため、信頼性の低い外部データを扱う際には慎重な判断が必要です。
このプロパティは、DOMDocumentオブジェクトに文書をロードする前に設定する必要があります。
構文(syntax)
1<?php 2$dom = new DOMDocument(); 3 4// strictErrorChecking プロパティを設定する例(厳密なエラーチェックを無効に設定) 5$dom->strictErrorChecking = false; 6 7// strictErrorChecking プロパティを取得する例 8$currentSetting = $dom->strictErrorChecking; 9?>
引数(parameters)
戻り値(return)
bool
DOMDocument::strictErrorChecking プロパティは、DOMDocument が厳密なエラーチェックを行うかどうかを示す真偽値 (boolean) です。true の場合は厳密なエラーチェックが行われ、false の場合は行われません。