草庐IT

DOM-Level

全部标签

php - 如何使用 php DOM 获取 <![CDATA[values]] > 中的值?

如何使用phpDOM在中获取值。这是我的xml中的一些代码。GRESGRDE 最佳答案 使用PHPDOM相当简单,与Javascript的DOM非常相似。以下是重要的类:DOMNode—可以在XML/HTML文档中遍历的任何内容的基类,包括文本节点、注释节点和CDATA节点DOMElement—标签的基类。DOMDocument—文档的基类。包含加载/保存XML的方法,以及普通的DOM文档方法(见下文)。有几个主要的方法和属性:DOMDocument->load()—创建新的DOMDocument后,在该对象上使用此方法从文件加载。

php - 为什么 'Cannot break/continue 1 level' 出现在 PHP 中?

我有时会在以下位置收到此错误:if(true==$objWebsite){$arrobjProperties=(array)$objWebsite->fetchProperties();if(false==array_key_exists($Id,$Properties)){break;}$strBaseName=$strPortalSuffix.'/';return$strBaseName;}$strBaseName=$strSuffix;return$strBaseName;我已尝试重现此问题。但没有取得任何进展。$Id,$Properties具有收到的值(value)。有谁知道“

PHP DOM 用新元素替换元素

我有一个加载了HTML标记的DOM对象。我正在尝试替换所有如下所示的嵌入标签:使用这样的标签:我无法解决这个问题,我不想为此使用正则表达式。你能帮帮我吗?编辑:这是我目前所拥有的://DOMinitializedabove,notimportantforeach($dom->getElementsByTagName('embed')as$e){$path=$e->getAttribute('src');$width=$e->getAttribute('width').'px';$height=$e->getAttribute('height').'px';$a=$dom->create

PHP DOM获取nodevalue html? (不剥离标签)

我正在尝试使用nodeValue在文件中获取div标记的innerhtml,但是此代码仅输出纯文本,并且似乎从div内部剥离了所有html标记。如何更改此代码以输出div的HTML内容而不是纯文本,并且还输出包装它的子元素的主div。例子:file.txt的内容:texttexttexttexttexttexttexttexttextscript.php:$file=file_get_contents('file.txt');$doc=newDOMDocument();@$doc->loadHTML(''.$file);$entries=$doc->getElementsByTagNa

php - fatal error : Nesting level too deep - recursive dependency?

我有一个复杂的嵌套对象层次结构,所有子对象(存储在父类中的对象数组)都包含一个链接回其父类的属性:相当简单明了,没有实际问题。如果我对层次结构中的任何对象执行var_dump,我将在转储中获得递归引用,正如我所期望的那样。FIRSTGEN_childrenarrayofobjectsoftypeSECONDGENSECONDGEN#1_parentobjectoftypeFIRSTGEN_childrenarrayofobjectsoftypeTHIRDGENTHIRDGEN#1_parentobjectoftypeSECONDGENTHIRDGEN#2_parentobjectoft

php - 在 PHP DOM 中获取节点的文本

如何使用PHPDOM从该标记中提取字符串“text”?notthistext$div->nodeValue包括“notthis” 最佳答案 您可以直接使用XPath访问DOMText节点:$xpath=newDOMXPath($dom_document);$node=$xpath->query('//div/text()')->item(0);echo$node->textContent;//text 关于php-在PHPDOM中获取节点的文本,我们在StackOverflow上找到一个

php - 我如何在 PHP 中遍历 DOM 元素?

我将一个XML文件加载到一个DOM文档中,我希望遍历所有“foo”标签,从它下面的每个标签中获取值。我知道我可以通过$element=$dom->getElementsByTagName('foo')->item(0);foreach($element->childNodesas$node){$data[$node->nodeName]=$node->nodeValue;}但是,我正在尝试做的是来自XML之类的,遍历每个foo标签,并获取特定的bar或pub,并从那里获取值。现在,我如何遍历foo以便我仍然可以按名称访问特定的子节点? 最佳答案

php dom 获取节点的所有属性

有没有简单的方法可以在不检查节点是否具有该属性的情况下获取节点的所有属性?简而言之,这是我正在尝试做的一个例子:我有这个简短的文档:sometextsomelink好的..现在如果我用getAttribute('align')检查p标签我会得到中心值..这很酷,但我想看看p标签是否还有另一个属性,比如样式而不检查每个属性可能的。在img标签上,我必须检查src、宽度、高度、样式、onclick等。以验证它们是否存在。但我认为这可能是查看所有属性的更简单方法。 最佳答案 考虑到您的节点是DOMElement或DOMNode,您可以使用

php - laravel Composer 更新 : the requested PHP extension dom is missing from your system

我使用的是ubuntu16.04,laravel5.2当我在我的项目目录中运行updatecomposer时,它显示“您的系统中缺少请求的PHP扩展dom”我检查了已安装的PHP包,它在那里可用 最佳答案 安装xml-extension(在我的例子中是php7.0-xml)解决了这个问题sudoapt-getinstallphp-xml 关于php-laravelComposer更新:therequestedPHPextensiondomismissingfromyoursystem,我

php - 允许 HTML5 风格的 DOM 解析器 </in &lt;script&gt; 标签

更新:html5lib(问题的底部)似乎很接近,我只需要提高对它的使用方式的理解。我正在尝试为PHP5.3寻找一个与HTML5兼容的DOM解析器。特别是,我需要在脚本标记中访问以下类似HTML的CDATA:${name}大多数解析器会提前结束解析,因为HTML4.01endsscripttagparsing当它在中找到ETAGO()时标签。但是,HTML5allowsfor之前.到目前为止,我尝试过的所有解析器都失败了,或者它们的文档太少,以至于我不知道它们是否有效。我的要求:真正的解析器,而不是正则表达式黑客。能够加载完整页面或HTML片段。能够拉回脚本内容,通过标签的id属性进行选