Class: I2CE Util

From IHRIS Wiki
Revision as of 21:25, 16 October 2009 by Litlfred (talk | contribs)

This article desrcibes the class I2CE_Util. It is contained in the module I2CE in the package I2CE

The class is defined in the file: lib/I2CE_Util.php

@subpackage Core I2CE_Util @todo Better documentation

  • Author: Carl Leitner <litlfred@ibiblio.org>

Methods

array_unique()

array unique which respects multi-dimensional arrays from: the link http://us.php.net/manual/en/function.array-unique.php#84750 sda

  • Signature: static public function array_unique($arr)

Parameters:

  • $arr

convertLikeToRegExp()

Convers a sql like statement to a regular expression

  • Signature: static public function convertLikeToRegExp($like,$escape)
  • Returns: string

Parameters:

  • string $like
  • string $escape
    The escape character. Defaults to \'
    • Default Value: '\\'

explodeAndExecuteSQLQueries()

Explode and execute a @param MDB2 connection $db

  • Signature: static public function explodeAndExecuteSQLQueries($sql,$db,$transact,$delimiter)
  • Returns: boolean true on sucess or false

Parameters:

  • string $sql
    a nuch of sql queries
  • $db
  • boolean $transact
    defaults to true meaning that the whole script is executed in a transaction. If a string, it is the name of a savepoint to rollback to/release
    • Default Value: true
  • string $delimiter
    Defaults to ';'. Needs to be exactly one character
    • Default Value: ';'

flattenVariables()

Flatten variables. Transforms an array of variables of a nested array ['key1']['key2']['key3'] to an array with keys of the form 'key1:key2:key3'

  • Signature: static public function flattenVariables($vars,$flat,$encode,$skip_empty,$prefix)

Parameters:

  • array $vars
    the variables to flatten.
  • array &$flat
    The array to store the falttened variables in
  • boolean $encode
    Set to true (default) if we should urlencode the values
    • Default Value: true
  • boolean $skip_empty
    Set to true (default) skip empty values
    • Default Value: true
  • string $prefix
    Defaults to ;
    • Default Value:

merge_recursive()

Performs a recursive array merge which _overwrites_ values, not appends them ( the behaviour of array_merge_recursive). Warning: This is not a symmetric operation. Any multi-index that exists in $a and in $b will result that the value in $a will be overwritten by the value in $a

  • Signature: static public function merge_recursive($a,$b,$addNew,$addEmpty)

Parameters:

  • array &$a
    the array to merge into
  • array $b
    the array to merge from
  • boolean $addNew
    Defaults to true. If false, we do not add new keys
    • Default Value: true
  • boolean $addEmpty
    Defaults to true. If false, we do not add empty values
    • Default Value: true

runSQLScript()

Executes a script (this is ensured by addinging it to a <path name='sql'> node in the configuration XML a save point to use (assumes you are already in a transaction) it will use whatever database is refered to by the MDB2::singleton()

  • Signature: static public function runSQLScript($file,$database,$transact,$dsn,$delimiter)
  • Returns: boolean -- true on sucess, false on failure

Parameters:

  • string $file
    The SQL file to execute -- it must lie in the fileSearch's SQL category
  • string $database
    If non-null it will connect to the named database.
    • Default Value: null
  • mixed $transact
    defaults to true meaning that the whole script is executed in a transaction. If a string, it is the name of
    • Default Value: true
  • string $dsn
    An option DSN to connect on. If set $database is ignored.
    • Default Value: null
  • string $delimiter
    Defaults to ';' Needs to be exactly one character
    • Default Value: ';'

transformVariables()

Transforms an array of variables with keys of the form 'key1:key2:key3' into a nested array ['key1']['key2']['key3']

  • Signature: static public function transformVariables($vars)
  • Returns: array

Parameters: