当前位置: 首页>>代码示例>>PHP>>正文


PHP XMLDBTable::arr2XMLDBTable方法代码示例

本文整理汇总了PHP中XMLDBTable::arr2XMLDBTable方法的典型用法代码示例。如果您正苦于以下问题:PHP XMLDBTable::arr2XMLDBTable方法的具体用法?PHP XMLDBTable::arr2XMLDBTable怎么用?PHP XMLDBTable::arr2XMLDBTable使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在XMLDBTable的用法示例。


在下文中一共展示了XMLDBTable::arr2XMLDBTable方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: trim

 /**
  * Load data from XML to the structure
  */
 function arr2XMLDBStructure($xmlarr)
 {
     global $CFG;
     $result = true;
     /// Debug the structure
     /// traverse_xmlize($xmlarr);                   //Debug
     /// print_object ($GLOBALS['traverse_array']);  //Debug
     /// $GLOBALS['traverse_array']="";              //Debug
     /// Process structure attributes (path, comment and version)
     if (isset($xmlarr['XMLDB']['@']['PATH'])) {
         $this->path = trim($xmlarr['XMLDB']['@']['PATH']);
     } else {
         $this->errormsg = 'Missing PATH attribute';
         xmldb_dbg($this->errormsg);
         $result = false;
     }
     if (isset($xmlarr['XMLDB']['@']['VERSION'])) {
         $this->version = trim($xmlarr['XMLDB']['@']['VERSION']);
     } else {
         $this->errormsg = 'Missing VERSION attribute';
         xmldb_dbg($this->errormsg);
         $result = false;
     }
     if (isset($xmlarr['XMLDB']['@']['COMMENT'])) {
         $this->comment = trim($xmlarr['XMLDB']['@']['COMMENT']);
     } else {
         if (!empty($CFG->xmldbdisablecommentchecking)) {
             $this->comment = '';
         } else {
             $this->errormsg = 'Missing COMMENT attribute';
             xmldb_dbg($this->errormsg);
             $result = false;
         }
     }
     /// Iterate over tables
     if (isset($xmlarr['XMLDB']['#']['TABLES']['0']['#']['TABLE'])) {
         foreach ($xmlarr['XMLDB']['#']['TABLES']['0']['#']['TABLE'] as $xmltable) {
             if (!$result) {
                 //Skip on error
                 continue;
             }
             $name = trim($xmltable['@']['NAME']);
             $table = new XMLDBTable($name);
             $table->arr2XMLDBTable($xmltable);
             $this->tables[] = $table;
             if (!$table->isLoaded()) {
                 $this->errormsg = 'Problem loading table ' . $name;
                 xmldb_dbg($this->errormsg);
                 $result = false;
             }
         }
     } else {
         $this->errormsg = 'Missing TABLES section';
         xmldb_dbg($this->errormsg);
         $result = false;
     }
     /// Perform some general checks over tables
     if ($result && $this->tables) {
         /// Check tables names are ok (lowercase, a-z _-)
         if (!$this->checkNameValues($this->tables)) {
             $this->errormsg = 'Some TABLES name values are incorrect';
             xmldb_dbg($this->errormsg);
             $result = false;
         }
         /// Check previous & next are ok (duplicates and existing tables)
         if ($result && !$this->checkPreviousNextValues($this->tables)) {
             $this->errormsg = 'Some TABLES previous/next values are incorrect';
             xmldb_dbg($this->errormsg);
             $result = false;
         }
         /// Order tables
         if ($result && !$this->orderTables($this->tables)) {
             $this->errormsg = 'Error ordering the tables';
             xmldb_dbg($this->errormsg);
             $result = false;
         }
     }
     /// Iterate over statements
     if (isset($xmlarr['XMLDB']['#']['STATEMENTS']['0']['#']['STATEMENT'])) {
         foreach ($xmlarr['XMLDB']['#']['STATEMENTS']['0']['#']['STATEMENT'] as $xmlstatement) {
             if (!$result) {
                 //Skip on error
                 continue;
             }
             $name = trim($xmlstatement['@']['NAME']);
             $statement = new XMLDBStatement($name);
             $statement->arr2XMLDBStatement($xmlstatement);
             $this->statements[] = $statement;
             if (!$statement->isLoaded()) {
                 $this->errormsg = 'Problem loading statement ' . $name;
                 xmldb_dbg($this->errormsg);
                 $result = false;
             }
         }
     }
     /// Perform some general checks over statements
     if ($result && $this->statements) {
//.........这里部分代码省略.........
开发者ID:janaece,项目名称:globalclassroom4_clean,代码行数:101,代码来源:XMLDBStructure.class.php


注:本文中的XMLDBTable::arr2XMLDBTable方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。