問題タブ [domdocument]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 別の要素に 2 回追加した後、DOMNode 参照が機能しなくなりました
PHP5 クラスの DOMDocument のラッパーを使用して HTML を生成しています。これにより、DOM を使用して HTML を簡単に変更できます。
たとえば、要素 #1 を作成して要素 #2 に追加しても、要素 #1 を直接変更することができます。
ただし、次の場合に問題が発生します。
- 要素 #1 が要素 #2 に追加されます
- 要素 #2 が要素 #3 に追加されます
- 要素 #1 は変更されていますが、要素 #3 (#1 と #2 を含む) の DOM には変更が表示されません。
簡単なサンプル コード:
$el2 はディープ コピーされ、$el3 の DOM に追加されるため、変更することは可能です。ただし、$el1 は依然として $doc2/$el2 の DOM を指しており、変更は $el3 の DOM には反映されません。
$el1 を $el3 の DOM の正しいノードに直接ポイントする一般的な方法はありますか?
php - DOMDocument を介して子を持つノードのコンテンツを取得する
私は次のhtmlを持っています:
ネストせずに body のコンテンツを取得するにはどうすればよい<div>
ですか? 「本文テキスト」を取得する必要がありますが、これを行う方法がわかりません。
走った結果
「Body textdivコンテンツ」ですが、これはまさに私が取得したいものではありません
php - XML 投稿を「php://input」からファイルにダンプする
XML ポストバック リスナーのパーサーを作成しようとしていますが、サンプルの xml をダンプするようにできません。API サポート担当者は、'DOMDocument' を使用するように言いましたが、'SimpleXML' でしょうか? とにかくここにコードがあります:(ありがとう!)
php - PHPDOMDocumentを使用してRSSを生成する際の不正な形式のXML
PHPのSimpleXMLとDOMDocumentを使用して、GoogleMerchantRSSフィードを生成しようとしています。
実際の生成コードは次のようになります。
($ xmlにはすべてのデータがありますが、私の問題には関係ありません)
すべて正常に生成されますが、ここにXMLエラーがあります。
Google Merchant、Google Chrome、validome.orgによると、2行目にエラーがあります。より正確には、Validomeは、それがで終わるべきではなく/>
、ただで終わるべきであると言ってい>
ます。問題は、私がそれを制御できないことです。その部分はによって生成されました:
php - PHP DOmDocument、XML、CSS-動作させることができません
DomDocumentを使用してXMLストリームを生成しています。純粋なXMLストリームが必要なので、xsl変換でソースコードを変更したくありません。それでも、右クリックして[ソースを表示]を選択しなくても、ブラウザでXMLを「読み取る」ことができるようにしたいと思います。
したがって、私が行うことは、DomDocumentを作成し、処理命令を追加することです。
次に、すべてのアイテムを追加します。結果のXMLは次のようになります。
元のxmlへのリンクは次のとおりです。
http://www.todasmisreservas.com/service/rss.php?obj=1type=res&status=confirmed&xsl=1
これが私のCSSです:
cssfileがxmlに何らかの影響を与えることを機能させることができません。私は何が間違っているのですか?
ありがとう
マエニー
php - XML構造を変更した後、ノードが名前空間(プレフィックス)を無視するようにします。PHP DOMDocument
元のXML(myfile.xml)
目的は、ドキュメントルートノードのすぐ下に子を追加し、新しい子の下に「元の」子を「プッシュ」することです。
このphpスクリプトはそれを行います
ただし、出力は
したがって、すべてのノード(「デフォルト」の名前空間にある)には「blaba」プレフィックスが付加されています
それを回避する方法は?PHPをに変更する場合、進行状況を検査する場合
echo is ...(削除されたプレフィックス:)(追加されたプレフィックス:)(削除されたプレフィックス:)(追加されたプレフィックス:デフォルト)..
よろしくお願いします!
PSこれはこの質問の続編であるため、「または、誰かが望ましい結果を達成するための一般的にはるかに優れたソリューションを持っている可能性があります[マジックノードを追加し、その中にすべてをプッシュする]」はまだ適用されます...
実際、Josh Davisが指摘しているように、「デフォルトの名前空間宣言を最初に置く」場合、ルックアッププレフィックスはなくなります。+1。しかし、それは出力のようにそれです...
...宣言はまだあります。明確化。私はそれらのXMLドキュメントの作成者ではありません。したがって、デフォルトの名前空間宣言の位置を確認します...実装されていても、望ましい結果は得られません。そして、libxmlによって追加された宣言が標準で存在する必要がある場合でも、私のタスクは適合性を検証することではありませんが、
すべての元の子ノードをコンテンツ(宣言、名前、値、属性など)にそのまま入れて、新しく作成されたものの下に置くだけです。容器。
php - PHPを使用してワードプレスで最新のブログ投稿を取得していますか?
この php を使用して、ブログの最新の投稿を取得しました。
このタスクの実行方法がわからなかったので、チュートリアルからこれを学びました。ただし、機能しますが、エラーログに次のエラーが出力され続けます。
何か案は?
ありがとう!
php - PHPでDOMDOcumentを使用してXMLを解析し、ツリー構造の配列を返す
これが私の最初の質問であるため、私の質問が意味をなさない場合は非常に申し訳ありませんが、私はしばらくの間投稿された質問を調べてきました。
右私はのXML構造を持っています
上記のxmlを解析して、次のような理想的な配列を生成する関数が必要です。
次に、配列のデータを抽出して、親子関係を持つテーブルに挿入できる必要があります。
この質問を完了するためにさらに情報が必要な場合はお知らせください。
お時間をいただき、誠にありがとうございます。
よろしく。
php - PHP DOM: 既存の DOMDocument の doctype を変更する
で DOMDocument を作成する場合DOMImplementation::createDocument()
、コンストラクターの 3 番目の引数として doctype を指定できます。この Doctype はドキュメントに「関連付け」られ、後で .xml を使用して取得できます$document->doctype
。
ただし、これは読み取り専用の属性です (エンコーディングやバージョンとは異なります!)。
既存の DOMDocument オブジェクトの doctype プロパティを変更する方法はありますか?
私が考えることができる唯一の回避策は、新しいDoctypeで新しいDOMDocumentを作成し、古いものからコンテンツをインポートしてコピーすることです。
php - PHP DomDocument、DomXPathエンコーディングの問題
ワードプレスフィードからのエンコードに問題があり、理解できないようです。
DOMDocument-> loadを使用してフィードをロードしていましたが、file_get_contentsを実行し、->XMLloadを使用して同じ結果を取得しています。必要に応じてフィードを操作できるように、XMLloadを実行しました。
私が探している正しい出力はです- ‘ £
。Xpathクエリからエコーするだけで、が得られ- ‘ £
ます。utf8_decodeでエコーすると、が得られ- ? £
ます。はるかに優れていますが、疑問符はアポストロフィにする必要があります。
ロード時にDomDocumentの各ノードをループすると、正しい出力が得られます。そのため、XPathでは正しく処理されていないようです。
何か考えはありますか?
フィードはhttp://shredeasy.com/blog/category/news/feed
呼び出されている関数は次のとおりです。
私は何時間もこれを理解しようとしてきました、そして私は間違ったことに戻って回り続けます。
助けてくれてありがとう!
ご存知のとおり、アポストロフィが疑問符に変わっているようです。それが唯一の問題かどうかはわかりません。