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


PHP XML::loadFile方法代码示例

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


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

示例1: getXML

 /**
  * Loads the xml file into a string and returns this string.
  *  
  * @return 	XML		$xml
  */
 protected function getXML()
 {
     $instructions = $this->installation->getInstructions();
     if (!isset($instructions[$this->tagName]['cdata'])) {
         return false;
     }
     // Search the acpmenu xml-file in the package archive.
     // Abort installation in case no file was found.
     if (($fileIndex = $this->installation->getArchive()->getTar()->getIndexByFilename($instructions[$this->tagName]['cdata'])) === false) {
         throw new SystemException("xml file '" . $instructions[$this->tagName]['cdata'] . "' not found in '" . $this->installation->getArchive()->getArchive() . "'", 13008);
     }
     // Extract acpmenu file and parse with SimpleXML
     $xml = new XML();
     $tmpFile = FileUtil::getTemporaryFilename('xml_');
     try {
         $this->installation->getArchive()->getTar()->extract($fileIndex, $tmpFile);
         $xml->loadFile($tmpFile);
     } catch (Exception $e) {
         // bugfix to avoid file caching problems
         try {
             $this->installation->getArchive()->getTar()->extract($fileIndex, $tmpFile);
             $xml->loadFile($tmpFile);
         } catch (Exception $e) {
             $this->installation->getArchive()->getTar()->extract($fileIndex, $tmpFile);
             $xml->loadFile($tmpFile);
         }
     }
     @unlink($tmpFile);
     return $xml;
 }
开发者ID:CaribeSoy,项目名称:contest-wcf,代码行数:35,代码来源:AbstractXMLPackageInstallationPlugin.class.php

示例2: get

 /**
  * Get table
  *
  *  <code>
  *     $table = Table::get('table_name');
  *  </code>
  *
  * @param  array $table_name Table name
  * @return mixed
  */
 public static function get($table_name)
 {
     // Redefine vars
     $table_name = (string) $table_name;
     // Load table
     if (file_exists(Table::$tables_dir . '/' . $table_name . '.table.xml') && is_file(Table::$tables_dir . '/' . $table_name . '.table.xml')) {
         $data = array('xml_object' => XML::loadFile(Table::$tables_dir . '/' . $table_name . '.table.xml'), 'xml_filename' => Table::$tables_dir . '/' . $table_name . '.table.xml');
         return $data;
     } else {
         return false;
     }
 }
开发者ID:cmroanirgo,项目名称:monstra,代码行数:22,代码来源:Table.php

示例3: __

                        <th><?php 
echo __('Author', 'plugins');
?>
</th>
                        <th><?php 
echo __('Version', 'plugins');
?>
</th>
                        <th></th>
                    </tr>
                </thead>
                <tbody>

                    <?php 
foreach ($plugins_to_intall as $plug) {
    $plugin_xml = XML::loadFile($plug['path']);
    ?>
                    <tr>
                        <td>
                            <?php 
    echo $plugin_xml->plugin_name;
    ?>
                        </td>
                        <td class="hidden-phone">
                           <?php 
    echo $plugin_xml->plugin_description;
    ?>
                        </td>
                        <td>
                           <a href="<?php 
    echo $plugin_xml->plugin_author_uri;
开发者ID:rowena-altastratus,项目名称:altastratus,代码行数:31,代码来源:index.view.php

示例4: main

 /**
  * Plugins admin
  */
 public static function main()
 {
     // Get siteurl
     $site_url = Option::get('siteurl');
     // Get installed plugin from $plugins array
     $installed_plugins = Plugin::$plugins;
     // Get installed users plugins
     $_users_plugins = array();
     foreach (Plugin::$plugins as $plugin) {
         if ($plugin['privilege'] !== 'box') {
             $_users_plugins[] = $plugin['id'];
         }
     }
     // Get plugins table
     $plugins = new Table('plugins');
     // Delete plugin
     // -------------------------------------
     if (Request::get('delete_plugin')) {
         if (Security::check(Request::get('token'))) {
             // Nobody cant remove box plugins
             if ($installed_plugins[Text::lowercase(str_replace("Plugin", "", Request::get('delete_plugin')))]['privilege'] !== 'box') {
                 // Run plugin uninstaller file
                 $plugin_name = Request::get('delete_plugin');
                 if (File::exists(PLUGINS . DS . $plugin_name . DS . 'install' . DS . $plugin_name . '.uninstall.php')) {
                     include PLUGINS . DS . $plugin_name . DS . 'install' . DS . $plugin_name . '.uninstall.php';
                 }
                 // Clean Monstra TMP folder.
                 Monstra::cleanTmp();
                 // Increment Styles and Javascript version
                 Stylesheet::stylesVersionIncrement();
                 Javascript::javascriptVersionIncrement();
                 // Delete plugin form plugins table
                 $plugins->deleteWhere('[name="' . Request::get('delete_plugin') . '"]');
                 // Redirect
                 Request::redirect('index.php?id=plugins');
             }
         } else {
             die('Request was denied because it contained an invalid security token. Please refresh the page and try again.');
         }
     }
     // Install new plugin
     // -------------------------------------
     if (Request::get('install')) {
         if (Security::check(Request::get('token'))) {
             // Load plugin install xml file
             $plugin_xml = XML::loadFile(PLUGINS . DS . basename(Text::lowercase(Request::get('install')), '.manifest.xml') . DS . 'install' . DS . Request::get('install'));
             // Add plugin to plugins table
             $plugins->insert(array('name' => basename(Request::get('install'), '.manifest.xml'), 'location' => (string) $plugin_xml->plugin_location, 'status' => (string) $plugin_xml->plugin_status, 'priority' => (int) $plugin_xml->plugin_priority));
             // Clean Monstra TMP folder.
             Monstra::cleanTmp();
             Stylesheet::stylesVersionIncrement();
             Javascript::javascriptVersionIncrement();
             // Run plugin installer file
             $plugin_name = str_replace(array("Plugin", ".manifest.xml"), "", Request::get('install'));
             if (File::exists(PLUGINS . DS . basename(Text::lowercase(Request::get('install')), '.manifest.xml') . DS . 'install' . DS . $plugin_name . '.install.php')) {
                 include PLUGINS . DS . basename(Text::lowercase(Request::get('install')), '.manifest.xml') . DS . 'install' . DS . $plugin_name . '.install.php';
             }
             Request::redirect('index.php?id=plugins');
         } else {
             die('Request was denied because it contained an invalid security token. Please refresh the page and try again.');
         }
     }
     // Delete plugin from server
     // -------------------------------------
     if (Request::get('delete_plugin_from_server')) {
         if (Security::check(Request::get('token'))) {
             // Clean Monstra TMP folder.
             Monstra::cleanTmp();
             Stylesheet::stylesVersionIncrement();
             Javascript::javascriptVersionIncrement();
             Dir::delete(PLUGINS . DS . basename(Request::get('delete_plugin_from_server'), '.manifest.xml'));
             Request::redirect('index.php?id=plugins');
         } else {
             die('Request was denied because it contained an invalid security token. Please refresh the page and try again.');
         }
     }
     // Upload & extract plugin archive
     // -------------------------------------
     if (Request::post('upload_file')) {
         if (Security::check(Request::post('csrf'))) {
             if ($_FILES['file']) {
                 if (in_array(File::ext($_FILES['file']['name']), array('zip'))) {
                     $tmp_dir = ROOT . DS . 'tmp' . DS . uniqid('plugin_');
                     $error = 'Plugin was not uploaded';
                     if (Dir::create($tmp_dir)) {
                         $file_locations = Zip::factory()->extract($_FILES['file']['tmp_name'], $tmp_dir);
                         if (!empty($file_locations)) {
                             $manifest = '';
                             foreach ($file_locations as $filepath) {
                                 if (substr($filepath, -strlen('.manifest.xml')) === '.manifest.xml') {
                                     $manifest = $filepath;
                                     break;
                                 }
                             }
                             if (!empty($manifest) && basename(dirname($manifest)) === 'install') {
                                 $manifest_file = pathinfo($manifest, PATHINFO_BASENAME);
                                 $plugin_name = str_replace('.manifest.xml', '', $manifest_file);
//.........这里部分代码省略.........
开发者ID:rowena-altastratus,项目名称:altastratus,代码行数:101,代码来源:plugins.admin.php


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