加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 钦州站长网 (https://www.0777zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

第三十一章 检查命名空间和类

发布时间:2022-11-16 13:02:40 所属栏目:PHP教程 来源:
导读:  第三十一章 检查命名空间和类

  类%XML.Namespaces提供了两个类方法,可用于检查XML命名空间及其包含的类:

  GetNextClass()

  classmethod GetNextClass(namespace As %String,
  
  第三十一章 检查命名空间和类
 
  类%XML.Namespaces提供了两个类方法,可用于检查XML命名空间及其包含的类:
 
  GetNextClass()
 
  classmethod GetNextClass(namespace As %String,
              class As %String) as %String
  返回给定XML命名空间中给定类之后的下一个类(按字母顺序)。当没有更多的类时PHP命名空间,此方法返回NULL。
 
  GetNextNamespace()
 
  classmethod GetNextNamespace(namespace As %String) as %String
  返回给定命名空间之后的下一个命名空间(按字母顺序)。当没有更多的命名空间时,此方法返回NULL。
 
  在这两种情况下,只考虑当前的InterSystems IRIS命名空间。此外,映射的类也会被忽略。
 
  例如,以下方法列出当前InterSystems IRIS命名空间的XML命名空间及其类:
 
  ClassMethod WriteNamespacesAndClasses()
  {
    Set ns=""
    Set ns=##class(%XML.Namespaces).GetNextNamespace(ns)
    While ns '=""
    {
      Write !, "The namespace ",ns, " contains these classes:"
      Set cls=""
      Set cls=##class(%XML.Namespaces).GetNextClass(ns,cls)
      
      While cls '=""
      {
        Write !, "   ",cls
        Set cls=##class(%XML.Namespaces).GetNextClass(ns,cls)
        }
        
        Set ns=##class(%XML.Namespaces).GetNextNamespace(ns)
        }
  }
  在终端中执行时,此方法会生成如下所示的输出:
 
  The namespace http://www.address.org contains these classes:
     ElRef.NS.Address
     GXML.AddressNS
     MyApp4.Obj.Address
     MyAppNS.AddressNS
     Obj.Attr.Address
     Obj.Ns.Address
     Obj.Ns.AddressClass
  The namespace http://www.doctor.com contains these classes:
     GXML.DoctorNS
  The namespace http://www.one.org contains these classes:
     GXML.AddressNSOne
     GXML.DoctorNSOne
     GXML.PersonNSOne
  ...
 

(编辑:PHP编程网 - 钦州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!