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


PHP MDB2::loadClass方法代码示例

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


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

示例1: test_loadClass

 /**
  * Tests that the MDB2::loadClass() method correctly loads classes.
  */
 function test_loadClass()
 {
     $this->assertTrue(MDB2::loadClass('MDB2', false), 'loadClass');
     // Suppress handling of PEAR errors while testing next case
     PEAR::pushErrorHandling(null);
     $result = MDB2::loadClass('null', false);
     $this->assertTrue(is_a($result, 'pear_error'), 'loadClass');
     PEAR::popErrorHandling();
 }
开发者ID:Alphenus,项目名称:ilmomasiina-php,代码行数:12,代码来源:MDB2_internals_testcase.php

示例2: dumpDatabase

 /**
  * Dump a previously parsed database structure in the Metabase schema
  * XML based format suitable for the Metabase parser. This function
  * may optionally dump the database definition with initialization
  * commands that specify the data that is currently present in the tables.
  *
  * @param array $database_definition multi dimensional array that contains the current definition
  * @param array $arguments           associative array that takes pairs of tag
  * names and values that define dump options.
  *                 <pre>array (
  *                     'output_mode'    =>    String
  *                         'file' :   dump into a file
  *                         default:   dump using a function
  *                     'output'        =>    String
  *                         depending on the 'Output_Mode'
  *                                  name of the file
  *                                  name of the function
  *                     'end_of_line'        =>    String
  *                         end of line delimiter that should be used
  *                         default: "\n"
  *                 );</pre>
  * @param int   $dump                Int that determines what data to dump
  *              + MDB2_SCHEMA_DUMP_ALL       : the entire db
  *              + MDB2_SCHEMA_DUMP_STRUCTURE : only the structure of the db
  *              + MDB2_SCHEMA_DUMP_CONTENT   : only the content of the db
  *
  * @return bool|MDB2_Error MDB2_OK or error object
  * @access public
  */
 function dumpDatabase($database_definition, $arguments, $dump = MDB2_SCHEMA_DUMP_ALL)
 {
     $class_name = $this->options['writer'];
     $result = MDB2::loadClass($class_name, $this->db->getOption('debug'));
     if (PEAR::isError($result)) {
         return $result;
     }
     // get initialization data
     if (isset($database_definition['tables']) && is_array($database_definition['tables']) && $dump == MDB2_SCHEMA_DUMP_ALL || $dump == MDB2_SCHEMA_DUMP_CONTENT) {
         foreach ($database_definition['tables'] as $table_name => $table) {
             $fields = array();
             $fieldsq = array();
             foreach ($table['fields'] as $field_name => $field) {
                 $fields[$field_name] = $field['type'];
                 $fieldsq[] = $this->db->quoteIdentifier($field_name, true);
             }
             $query = 'SELECT ' . implode(', ', $fieldsq) . ' FROM ';
             $query .= $this->db->quoteIdentifier($table_name, true);
             $data = $this->db->queryAll($query, $fields, MDB2_FETCHMODE_ASSOC);
             if (PEAR::isError($data)) {
                 return $data;
             }
             if (!empty($data)) {
                 $initialization = array();
                 $lob_buffer_length = $this->db->getOption('lob_buffer_length');
                 foreach ($data as $row) {
                     $rows = array();
                     foreach ($row as $key => $lob) {
                         if (is_resource($lob)) {
                             $value = '';
                             while (!feof($lob)) {
                                 $value .= fread($lob, $lob_buffer_length);
                             }
                             $row[$key] = $value;
                         }
                         $rows[] = array('name' => $key, 'group' => array('type' => 'value', 'data' => $row[$key]));
                     }
                     $initialization[] = array('type' => 'insert', 'data' => array('field' => $rows));
                 }
                 $database_definition['tables'][$table_name]['initialization'] = $initialization;
             }
         }
     }
     $writer = new $class_name($this->options['valid_types']);
     return $writer->dumpDatabase($database_definition, $arguments, $dump);
 }
开发者ID:CDN-Sparks,项目名称:owncloud,代码行数:75,代码来源:Schema.php

示例3: Configurations

<?php

require_once "CommonTools.php";
// Let's do a little hack. We need the configuration information now, because
// we must get the DBinterface with the help of rootDir. So, we must
// create configuration method in this point
$configurations = new Configurations();
// Connection $conn is made in DBInterface.php
require_once dirname(__FILE__) . "/../DBInterface.php";
// To the ageLessThan function
define("TIMEUNIT_DAYS", "days");
define("TIMEUNIT_MINUTES", "minutes");
// Warnings disabled
@MDB2::loadClass("MDB2_Driver_Datatype_Common", false);
@MDB2::loadClass("MDB2_Date", false);
@($MDB2Datatype = new MDB2_Driver_Datatype_Common());
$conn->loadModule('Datatype');
class Database
{
    var $configurations;
    var $page;
    var $debugger;
    var $connection;
    function Database()
    {
        global $configurations, $page, $debugger;
        $this->configurations =& $configurations;
        $this->page =& $page;
        $this->debugger =& $debugger;
        /*
        Tämä kaikki on aika turhaa, kun otaxille siirryttäessä tein 
开发者ID:Alphenus,项目名称:ilmomasiina-php,代码行数:31,代码来源:Database.php

示例4: loadModule

 /**
  * loads a module
  *
  * @param   string  name of the module that should be loaded
  *                  (only used for error messages)
  * @param   string  name of the property into which the class will be loaded
  * @param   bool    if the class to load for the module is specific to the
  *                  phptype
  *
  * @return  object  on success a reference to the given module is returned
  *                  and on failure a PEAR error
  *
  * @access  public
  */
 function loadModule($module, $property = null, $phptype_specific = null)
 {
     if (!$property) {
         $property = strtolower($module);
     }
     if (!isset($this->{$property})) {
         $version = $phptype_specific;
         if ($phptype_specific !== false) {
             $version = true;
             $class_name = 'MDB2_Driver_' . $module . '_' . $this->phptype;
             $file_name = str_replace('_', DIRECTORY_SEPARATOR, $class_name) . '.php';
         }
         if ($phptype_specific === false || !MDB2::classExists($class_name) && !MDB2::fileExists($file_name)) {
             $version = false;
             $class_name = 'MDB2_' . $module;
             $file_name = str_replace('_', DIRECTORY_SEPARATOR, $class_name) . '.php';
         }
         $err = MDB2::loadClass($class_name, $this->getOption('debug'));
         if ((new PEAR())->isError($err)) {
             return $err;
         }
         // load module in a specific version
         if ($version) {
             if (method_exists($class_name, 'getClassName')) {
                 $class_name_new = call_user_func(array($class_name, 'getClassName'), $this->db_index);
                 if ($class_name != $class_name_new) {
                     $class_name = $class_name_new;
                     $err = MDB2::loadClass($class_name, $this->getOption('debug'));
                     if ((new PEAR())->isError($err)) {
                         return $err;
                     }
                 }
             }
         }
         if (!MDB2::classExists($class_name)) {
             $err = $this->raiseError(MDB2_ERROR_LOADMODULE, null, null, "unable to load module '{$module}' into property '{$property}'", __FUNCTION__);
             return $err;
         }
         $this->{$property} = new $class_name($this->db_index);
         $this->modules[$module] = $this->{$property};
         if ($version) {
             // this will be used in the connect method to determine if the module
             // needs to be loaded with a different version if the server
             // version changed in between connects
             $this->loaded_version_modules[] = $property;
         }
     }
     return $this->{$property};
 }
开发者ID:Alphenus,项目名称:ilmomasiina-php,代码行数:63,代码来源:MDB2.php

示例5: parseDictionaryDefinitionFile

 /**
  * Parse a changeset definition file by creating a schema
  * parser object and passing the file contents as parser input data stream.
  *
  * @param string the changeset schema file.
  * @param array associative array that the defines the text string values
  *              that are meant to be used to replace the variables that are
  *              used in the schema description.
  * @param bool make function fail on invalid names
  * @param array database structure definition
  * @access public
  */
 function parseDictionaryDefinitionFile($input_file, $variables = array(), $fail_on_invalid_names = true, $structure = false)
 {
     $dtd_file = $this->options['dtd_file'];
     if ($dtd_file) {
         require_once 'XML/DTD/XmlValidator.php';
         $dtd = new XML_DTD_XmlValidator();
         if (!$dtd->isValid($dtd_file, $input_file)) {
             return $this->customRaiseError(MDB2_SCHEMA_ERROR_PARSE, null, null, $dtd->getMessage());
         }
     }
     require_once "MDB2/Schema/ParserDictionary.php";
     $class_name = 'MDB2_Dictionary_Parser';
     $result = MDB2::loadClass($class_name, $this->db->getOption('debug'));
     if (PEAR::isError($result)) {
         return $result;
     }
     $parser = new $class_name($variables, $fail_on_invalid_names, $structure, $this->options['valid_types'], $this->options['force_defaults']);
     $class_name = 'MDB2_Schema_Validate';
     $parser->val = new $class_name($fail_on_invalid_names, $this->options['valid_types'], $this->options['force_defaults']);
     $result = $parser->setInputFile($input_file);
     if (PEAR::isError($result)) {
         return $result;
     }
     $result = $parser->parse();
     if (PEAR::isError($result)) {
         return $result;
     }
     if (PEAR::isError($parser->error)) {
         return $parser->error;
     }
     $dictionary = $parser->dictionary_definition;
     return $dictionary;
 }
开发者ID:hostinger,项目名称:revive-adserver,代码行数:45,代码来源:Schema.php

示例6: test_loadClass

 /**
  * Tests that the MDB2::loadClass() method correctly loads classes.
  * @dataProvider provider
  */
 public function test_loadClass($ci)
 {
     $this->manualSetUp($ci);
     $this->assertTrue(MDB2::loadClass('MDB2', false), 'loadClass');
     // Suppress handling of PEAR errors while testing next case
     $this->db->pushErrorHandling(null);
     $result = MDB2::loadClass('null', false);
     $this->assertTrue(is_object($result) && is_a($result, 'pear_error'), 'loadClass');
     $this->db->popErrorHandling();
 }
开发者ID:gauthierm,项目名称:MDB2,代码行数:14,代码来源:InternalsTest.php


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