• xml


    DomDocument
    
    属性:
    readonly public string $actualEncoding ; //不推荐。文档的实际编码,是读取等效于 编码。
    readonly public DOMConfiguration $config ; //不推荐。调用DOMDocument :: normalizeDocument()时使用的配置 。
    readonly public DOMDocumentType $doctype ;    //与本文档相关的文档类型声明。
    readonly public DOMElement $documentElement ;    //这是一个便捷属性,允许直接访问作为文档的文档元素的子节点。
    public string $documentURI ;    //文档的位置或NULL未定义。
    public string $encoding ;    //由XML声明指定的文档编码
    public bool $formatOutput ;    //很好地格式化输出与缩进和额外的空间。
    readonly public DOMImplementation $implementation ; //处理此文档 的DOMImplementation对象。
    public bool $preserveWhiteSpace =TRUE ;    //不要删除多余的空白区域。默认为TRUE。
    public bool $recover ;    //专有。启用恢复模式,即尝试解析非格式良好的文档。此属性不是DOM规范的一部分,并且特定于libxml
    public bool $resolveExternals ;    //将其设置为TRUE从doctype声明加载外部实体。这对于在XML文档中包含字符实体很有用。
    public bool $standalone ;    //不推荐。文档是否是独立的,如XML声明所指定,对应于 xmlStandalone。
    public bool $strictErrorChecking =TRUE ;    //在错误上抛出DOMException。默认为TRUE。
    public bool $substituteEntities ;    //专有。是否替换实体。此属性不是DOM规范的一部分,并且特定于libxml。
    public bool $validateOnParse =FALSE ;    //针对DTD加载和验证。默认为FALSE
    public string $version ;    //不推荐。XML版本对应于 xmlVersion
    readonly public string $xmlEncoding ;    //作为XML声明的一部分指定此文档的编码的属性。这是NULL未指定时或未知时,例如在内存中创建文档时。
    public bool $xmlStandalone ;    //作为XML声明的一部分,指定此文档是否为独立的属性。这是FALSE未指定的时间。
    public string $xmlVersion ;    //作为XML声明的一部分指定此文档的版本号的属性。如果没有声明,并且此文档支持“XML”功能,则值为“1.0”。
    
    
    __ construct //创建一个新的DOMDocument对象
    createAttribute //创建新属性
    createAttributeNS //使用关联的命名空间创建新的属性节点
    createCDATASection //创建新的cdata节点
    createComment //创建新的注释节点
    createDocumentFragment //创建新的文档片段
    createElement //创建新元素节点
    createElementNS //使用关联的命名空间创建新元素节点
    createEntityReference //创建新的实体引用节点
    createProcessingInstruction //创建新的PI节点
    createTextNode //创建新的文本节点
    getElementById //搜索具有特定id的元素
    getElementsByTagName //搜索具有给定本地标记名称的所有元素
    getElementsByTagNameNS //在指定的命名空间中搜索具有给定标记名称的所有元素
    importNode //将节点导入当前文档
    load //从文件加载XML
    loadHTML //从字符串加载HTML
    loadHTMLFile //从文件加载HTML
    loadXML //加载字符串类型的XML
    normalizeDocument //规范化文档
    registerNodeClass //用于创建基节点类型的注册扩展类
    relaxNGValidate //对文档执行relaxNG验证
    relaxNGValidateSource //对文档执行relaxNG验证
    save //将内部XML树转储回文件
    saveHTML //使用HTML格式将内部文档转储为字符串
    saveHTMLFile //使用HTML格式将内部文档转储到文件中
    saveXML //将内部XML树转储回字符串
    schemaValidate //根据模式验证文档
    schemaValidateSource //根据模式验证文档
    validate //根据文档的DTD验证文档
    xinclude //在DOMDocument对象中替换XIncludes
    
     
    
    
    节点类DOMNode属性
    public readonly string $nodeName ;//显示节点的名称
    public string $nodeValue ; //显示节点的值
    public readonly int $nodeType ; //显示节点的类型
    public readonly DOMNode $parentNode ; //表示所在节点的父节点
    public readonly DOMNodeList $childNodes ; //表示所在节点的所有子节点
    public readonly DOMNode $firstChild ; //表示某一节点的第一个节点
    public readonly DOMNode $lastChild ; //表示某一节点的最后一个子节点
    public readonly DOMNode $previousSibling ; //紧挨着当前节点的下一个节点
    public readonly DOMNode $nextSibling ; //紧挨着当前节点的上一个节点
    public readonly DOMNamedNodeMap $attributes ; //获取一个属性节点
    public readonly DOMDocument $ownerDocument ; //与此节点关联的DOMDocument对象
    public readonly string $namespaceURI ; //此节点的名称空间URI,或者如果未指定为NULL
    public string $prefix ; //此节点的名称空间前缀,或者NULL如果未指定
    public readonly string $localName ; //返回此节点的限定名称的本地部分
    public readonly string $baseURI ; //此节点的绝对基URI,或者NULL如果实现无法获取绝对URI。
    public string $textContent ; //此节点及其后代的文本内容
    节点类DOMNode方法
    appendChild (DOMNode $newnode ) //添加一个节点,如果文档树中已经存在该节点,则将它删除,然后在新位置插入
    hasChildNodes () //判定一个节点是否有子节点,有返回true,没有返回false
    removeChild (DOMNode $oldnode ) //去除一个节点
    replaceChild (DOMNode $newnode ,DOMNode $oldnode ) //从文档树中删除(并返回)指定的子节点,用另一个节点来替换它
    cloneNode ([ bool $deep ]) //复制一个节点,该方法有一个参数,true表示同时复制所有的子节点,false表示近复制当前节点
    insertBefore (DOMNode $newnode [,DOMNode $refnode ]) //在指定节点的前面插入一个节点,如果已经存在,则删除原来的,然后在新位置插入
    C14N ([ bool $exclusive [,bool $with_comments [,array $xpath [,array $ns_prefixes ]]]]) //将节点规范化为字符串(转成字符串)
    C14NFile (string $uri [,bool $exclusive=FALSE [,bool $with_comments=FALSE [,array $xpath [,array $ns_prefixes ]]]]) //将节点规范化为文件(存为文件)
    getLineNo () //获取节点的行号
    getNodePath () //获取节点的XPath
    hasAttributes () // 检查该节点是否有子节点
    
    isSameNode (DOMNode $node ) //检查两个节点是否是同一节点。比较不是基于内容
    isSupported (string $featurestring $version ) //检查指定版本是否支持该功能
    isDefaultNamespace (string $namespaceURI ) //检查指定的namespaceURI是否为默认命名空间
    lookupNamespaceUri (string $prefix ) //根据前缀获取节点的名称空间URI
    lookupPrefix (string $namespaceURI ) //根据名称空间URI获取节点的名称空间前缀
    normalize () //删除空文本节点并合并此节点及其所有子节点中的相邻文本节点
    
     
    
    
    nodeType 检查节点是属于元素节点(XML_ELEMENT_NODE)还是文本节点(XML_TEXT_NODE)
    
    $dom = new DomDocument();
    $dom->load("./file.xml") or die("error");
    $start = $dom->documentElement;
    fc($start);
    
    function fc($node) {
    $child = $node->childNodes;
    foreach($child as $item) {
    if ($item->nodeType == XML_TEXT_NODE) {
    if (strlen(trim($item->nodeValue))) echo trim($item->nodeValue)."<br/>";
    }
    else if ($item->nodeType == XML_ELEMENT_NODE) fc($item);
    }
    }
  • 相关阅读:
    JSP内置对象
    Java数据结构
    Java引用传递
    椭圆曲线算法的基本原理及实现
    常见的Java异常
    Java数据结构
    Java数据结构
    重拾JSP
    [洛谷P6185] [NOI online 提高]T1 序列
    [题解][BZOJ1299]巧克力棒
  • 原文地址:https://www.cnblogs.com/lichihua/p/9589252.html
Copyright © 2020-2023  润新知