「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Regex または PHP XML 拡張機能を使用してすべての XML タグに属性を追加する方法

Regex または PHP XML 拡張機能を使用してすべての XML タグに属性を追加する方法

2024 年 11 月 22 日に公開
ブラウズ:878

How to Add an Attribute to All XML Tags Using Regex or PHP XML Extensions?

XML タグに属性を追加する正規表現

質問:

preg_replace を使用して特定の属性を追加するにはどうすればよいですか文字列変数として保存された整形式の XML ドキュメント内のすべての XML タグに適用しますか?たとえば、次の XML を変更するとします:


 some text 

to:


 some text 

答え:

このタスクには正規表現を使用したくなりますが、お勧めできません。 XML は正規の言語ではないため、正規表現を使用しようとすると予期しない結果が生じる可能性があります。代わりに、PHP の XML 拡張機能を使用することをお勧めします。

$xml = new SimpleXml(file_get_contents($xmlFile));

function process_recursive($xmlNode)
{
    $xmlNode->addAttribute('attr', 'myAttr');

    foreach ($xmlNode->children() as $childNode)
    {
        process_recursive($childNode);
    }
}

process_recursive($xml);

echo $xml->asXML();

このメソッドは、すべての XML タグが適切に変更されることを保証し、XML で正規表現を使用する際の潜在的な落とし穴を回避します。

リリースステートメント この記事は、侵害がある場合は1729411576で複製されています。勉強[email protected]に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3