日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php domdocument getelementbyid,PHP DOMDocument- getElementByID添加Â代替空

發布時間:2023/12/3 php 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php domdocument getelementbyid,PHP DOMDocument- getElementByID添加Â代替空 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PHP DOMDocument-> getElementByID添加?代替空(PHP DOMDocument->getElementByID adding ? in place of empty )

我正在使用PHP的DOMDocument對象來解析一些HTML(使用cURL獲取)。 當我按ID獲取元素并輸出它時,任何空的 標記都會獲得一個額外的字符并變為? 。

代碼:

$document = new DOMDocument();

$document->validateOnParse = true;

$document->loadHTML( curl_exec($handle) );

curl_close($handle);

$element = $document->getElementById( __ELEMENT_ID__ );

echo $document->saveHTML();

echo $document->saveHTML($element);

?>

$document->saveHTML()命令按預期運行并打印出整個頁面。 但是,就像我上面說的那樣,在echo $document->saveHTML($element)命令echo $document->saveHTML($element)空標簽轉換為? 。

這發生在$element所有 標記中。

在這個過程中(通過ID獲取元素并輸出元素)是插入這個額外的字符? 我可以解決它,但我更感興趣的是找到根。

I'm using PHP's DOMDocument object to parse some HTML (fetched with cURL). When I get an element by ID and output it, any empty tags get an additional character and become ? .

The Code:

$document = new DOMDocument();

$document->validateOnParse = true;

$document->loadHTML( curl_exec($handle) );

curl_close($handle);

$element = $document->getElementById( __ELEMENT_ID__ );

echo $document->saveHTML();

echo $document->saveHTML($element);

?>

The $document->saveHTML() command behaves as expected and prints out the entire page. BUT, like I say above, on the echo $document->saveHTML($element) command transforms empty tags into ? .

This happens to all tags within $element.

What in this process (of getting the element by ID and outputting the element) is inserting this extra character? I'm could work around it, but I'm more interested in getting to the root.

原文:https://stackoverflow.com/questions/13629351

更新時間:2019-11-29 11:57

最滿意答案

我能夠通過設置頁面的字符編碼來解決問題。 我提取的頁面沒有定義的字符編碼,我的頁面只是一個沒有定義標題信息的片段。 當我添加

問題消失了。

I was able to fix the problem by setting the character encoding of the page. The page I was fetching did not have a defined character encoding, and my page was just a snippet without defined header info. When I added

The problem disappeared.

2012-11-30

相關問答

我能夠通過設置頁面的字符編碼來解決問題。 我提取的頁面沒有定義的字符編碼,我的頁面只是一個沒有定義標題信息的片段。 當我添加

問題消失了。 I was able to fix the problem by setting the character encoding of the page. The page I was

...

你可以使用DOMDocumentFragment和它的appendXML()方法,例如 <?php

$doc = new DOMDocument();

$doc->formatOutput = true;

$ele = $doc->createElement("someele", "Hello");

$xmlstuff = $doc->createElement("otherxmlstuff");

$fragment = $doc->createDocumentFragm

...

function getInnerHtml( $node ) {

$innerHTML= '';

$children = $node->childNodes;

foreach ($children as $child) {

$innerHTML .= $child->ownerDocument->saveXML( $child );

}

return $innerHTML;

}

$html = getInnerHtml($d

...

替換&nbsp; 與&amp; nbsp; 然后當讀取htmlDom文檔時,它將返回&nbsp; replace ? with &nbsp; then when the htmlDom doc is read it will return ?

您可以使用抑制解析錯誤的輸出 libxml_use_internal_errors(true);

要檢查返回的響應是否為404,您可以在調用DOMDocument::load()之后檢查$http_response_header 例: libxml_use_internal_errors(true);

$rssDom = new DOMDocument();

$rssDom->load($url);

if (strpos($http_response_header[0], '404')) {

...

我認為,如果禁用外部實體加載器,則顯然無法加載外部實體 。 唯一的解決方案是使用libxml_disable_entity_loader(false)啟用外部實體的加載。 由于此設置不是線程安全的,我可以看到兩種方法: 全局啟用它并使用其他功能來阻止加載不需要的實體(通常來自網絡): 使用libxml_set_external_entity_loader注冊您自己的實體加載器。 我認為這是最安全的解決方案。 使用解析選項LIBXML_NONET 。 如果您只想禁用libxml2的網絡訪問,這應該足

...

知道了,不知道它是如何無效的 - 證明文件: $xpath = new \DOMXpath($document);

$nodes = $xpath->query('//img[@id="banner"]');

// Return content if we don't have exactly one image with id="banner"

if(1 !== $nodes->length) return $content;

// DOMNode of the banner

$banner

...

用這個: $str = file_get_contents('http://dream-portal.net/index.php/board,65.0.html');

$doc = new DOMDocument();

@$doc->loadHTML($str);

$selector = new DOMXPath($doc);

foreach ($selector->query('//*[starts-with(@id, "msg_")]') as $node) {

var_dump

...

嘗試創建文件的用戶不是“yurow”(可能有權創建該文件的用戶)。 相反,它是一個用戶,如“apache”或“httpd”。 通常,系統設置為禁止apache / httpd用戶在Web根目錄中創建文件。 這是出于安全目的而做的,我不建議通過給webroot提供apache / httpd寫訪問來繞過它。 相反,您可以在/ home / yurow內部創建文檔(不在/ home / yurow / wwwroot內)。 一個例子可能是:/home/yurow/xmldata/test02.xml。

...

嘗試以正確的格式編寫HTML,使用雙引號分隔的屬性值,而不是單引號,因此它們不會被編碼。 Javascript識別由單引號分隔的字符串。 這是一個例子: $html = 'click here';

$doc = new DOMDocument();

$doc->loadHTML( $html );

echo $html . "\n";

echo "-----------------\n";

e

...

總結

以上是生活随笔為你收集整理的php domdocument getelementbyid,PHP DOMDocument- getElementByID添加Â代替空的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 99热99在线| 精品视频在线一区 | 人人看人人草 | 优优色影院 | 日韩av不卡在线播放 | 无码人妻丰满熟妇区bbbbxxxx | 成人欧美精品 | www.操 | 麻豆91精品| 国产福利电影在线 | 免费久久一级欧美特大黄 | 国产乱码久久久久 | 日本高潮网站 | 狠狠操狠狠摸 | 欧美激情影院 | 99riav1国产精品视频 | 亚洲综合区 | 午夜av在线播放 | 男人插女人网站 | 奇米狠狠777 | 日韩精品一区二区三区丰满 | 日韩av一二三区 | 免费看欧美成人a片无码 | 日韩在线视频网站 | 热玖玖 | 涩涩五月天 | 亚洲天堂av在线免费观看 | 国产人妖在线 | 久久一道本 | 成人一级片在线观看 | 欧美日韩999 | 人人爱操| 国产精品情侣呻吟对白视频 | 日本va欧美va精品发布 | 亚洲女同二女同志 | 操到喷水 | 精品自拍第一页 | 亚洲精品欧美日韩 | 小柔好湿好紧太爽了国产网址 | 少妇无码av无码专区在线观看 | 自拍欧美亚洲 | 亚洲一本二本 | 国产精品久久久久久无人区 | 美女一级片| 免费观看成人av | 国产精品理论片 | 精品第一页 | 亚洲同性gay激情无套 | 亚洲精品国产精品乱码不66 | 日本黄色xxxx | 国产主播自拍av | 亚洲一区二区三区 | 男女啊啊啊视频 | 91视频看| 色爱综合| 91亚洲欧美| 99在线免费 | 韩国一区二区视频 | 男女做爰猛烈吃奶啪啪喷水网站 | 操碰人人 | 久久精品国产久精国产 | 综合激情五月婷婷 | 久久久视屏 | 97视频在线观看免费 | 欧美综合视频在线观看 | 91在线观看. | 中文国产字幕 | 波多野结衣在线一区二区 | 超碰人人人人人人人 | 午夜小福利| 国产又粗又猛又黄 | 国产亚洲精品熟女国产成人 | 欧美巨大荫蒂茸毛毛人妖 | 久久国产片 | 一级大片黄色 | 精品日本一区二区三区 | 一区二区在线视频 | 日韩久久精品一区二区 | 在线观看久 | 亚洲人人插 | 午夜久久 | 日韩高清不卡在线 | 桃色网址 | 欧美国产精品一区 | 成人做爰www看视频软件 | 丁香花电影高清在线阅读免费 | 嘿咻视频在线观看 | 88av网| 成年人免费在线观看视频网站 | 一女二男一黄一片 | 黄色一级在线播放 | 午夜极品| 91色偷偷 | 97精品在线观看 | 久久久啊啊啊 | 2018av在线| 欧美日韩亚洲在线观看 | 三度诱惑免费版电影在线观看 | 天天摸夜夜添狠狠添婷婷 |