Moodle PHP Documentation 4.4
Moodle 4.4.1 (Build: 20240610) (db07c09afc5)
xmldb_file Class Reference
Inheritance diagram for xmldb_file:
xmldb_object

Public Member Functions

 __construct ($path)
 Constructor of the xmldb_file.
 
 arr2xmldb_structure ($xmlarr)
 This function takes an xmlized array and put it into one xmldb_structure.
 
 checkName ()
 This function will check if one key name is ok or no (true/false) only lowercase a-z, 0-9 and _ are allowed.
 
 checkNameValues ($arr)
 This function will check that all the elements in one array have a correct name [a-z0-9_].
 
 comma2array ($string)
 Returns one array of elements from one comma separated string, supporting quoted strings containing commas and concat function calls.
 
 debug ($message)
 This function will perform the central debug of all the XMLDB classes being called automatically every time one error is found.
 
 fileExists ()
 Determine if the XML file exists.
 
 fileWriteable ()
 Determine if the XML is writeable.
 
 findObjectInArray ($objectname, $arr)
 Returns the position of one object in the array.
 
 fixPrevNext (&$arr)
 Reconstruct previous/next attributes.
 
 getComment ()
 This function returns the comment of one xmldb_object.
 
 getError ()
 This function will return the error detected in the object.
 
 getHash ()
 This function returns the hash of one xmldb_object.
 
 getName ()
 This function will return the name of the xmldb_object.
 
 getNext ()
 This function will return the name of the next xmldb_object.
 
 getPrevious ()
 This function will return the name of the previous xmldb_object.
 
 getStructure ()
 
 hasChanged ()
 This function returns true/false, if the xmldb_object has changed.
 
 isLoaded ()
 This function returns true/false, if the xmldb_object has been loaded.
 
 loadXMLStructure ()
 Load and the XMLDB structure from file.
 
 orderElements ($arr)
 This function will order all the elements in one array, following the previous/next rules.
 
 readableInfo ()
 This function will display a readable info about the xmldb_object (should be implemented inside each XMLDBxxx object)
 
 saveXMLFile ()
 This function saves the whole xmldb_structure to its file.
 
 setChanged ($changed=true)
 This function will set the changed field of the xmldb_object.
 
 setComment ($comment)
 This function will set the comment of the xmldb_object.
 
 setDTD ($path)
 This function sets the DTD of the XML file.
 
 setHash ($hash)
 This function will set the hash of the xmldb_object.
 
 setLoaded ($loaded=true)
 This function will set the loaded field of the xmldb_object.
 
 setName ($name)
 This function will set the name field of the xmldb_object.
 
 setNext ($next)
 This function will set the next of the xmldb_object.
 
 setPrevious ($previous)
 This function will set the previous of the xmldb_object.
 
 setSchema ($path)
 This function sets the schema of the XML file.
 
 validateDefinition (xmldb_table $xmldb_table=null)
 Validates the definition of objects and returns error message.
 
 validateXMLStructure ()
 This function will check/validate the XML file for correctness Dynamically if will use the best available checker/validator (expat syntax checker or DOM schema validator.
 

Protected Attributes

bool $changed
 was object changed
 
string $comment
 comment on object
 
string $dtd
 document dtd
 
string $errormsg
 error message
 
string $hash
 hash of object
 
bool $loaded
 is it loaded yet
 
string $name
 name of obejct
 
string $next
 
string $path
 path to file
 
string $previous
 
string $schema
 path to schema
 
xmldb_structure $xmldb_structure
 the structure stored in file
 

Constructor & Destructor Documentation

◆ __construct()

xmldb_file::__construct ( $path)

Constructor of the xmldb_file.

Parameters
string$path

Reimplemented from xmldb_object.

Member Function Documentation

◆ arr2xmldb_structure()

xmldb_file::arr2xmldb_structure ( $xmlarr)

This function takes an xmlized array and put it into one xmldb_structure.

Parameters
array$xmlarr
Return values
xmldb_structure

◆ checkName()

xmldb_object::checkName ( )
inherited

This function will check if one key name is ok or no (true/false) only lowercase a-z, 0-9 and _ are allowed.

Return values
bool

◆ checkNameValues()

xmldb_object::checkNameValues ( $arr)
inherited

This function will check that all the elements in one array have a correct name [a-z0-9_].

Parameters
array$arr
Return values
bool

◆ comma2array()

xmldb_object::comma2array ( $string)
inherited

Returns one array of elements from one comma separated string, supporting quoted strings containing commas and concat function calls.

Parameters
string$string
Return values
array

◆ debug()

xmldb_object::debug ( $message)
inherited

This function will perform the central debug of all the XMLDB classes being called automatically every time one error is found.

Apart from the main actions performed in it (XMLDB agnostic) it looks for one function called xmldb_debug() and invokes it, passing both the message code and the whole object. So, to perform custom debugging just add such function to your libs.

Call to the external hook function can be disabled by request by defining XMLDB_SKIP_DEBUG_HOOK

Parameters
string$message

◆ fileExists()

xmldb_file::fileExists ( )

Determine if the XML file exists.

Return values
bool

◆ fileWriteable()

xmldb_file::fileWriteable ( )

Determine if the XML is writeable.

Return values
bool

◆ findObjectInArray()

xmldb_object::findObjectInArray ( $objectname,
$arr )
inherited

Returns the position of one object in the array.

Parameters
string$objectname
array$arr
Return values
mixed

◆ fixPrevNext()

xmldb_object::fixPrevNext ( & $arr)
inherited

Reconstruct previous/next attributes.

Parameters
array$arr
Return values
booltrue if $arr modified

◆ getComment()

xmldb_object::getComment ( )
inherited

This function returns the comment of one xmldb_object.

Return values
string

◆ getError()

xmldb_object::getError ( )
inherited

This function will return the error detected in the object.

Return values
string

◆ getHash()

xmldb_object::getHash ( )
inherited

This function returns the hash of one xmldb_object.

Return values
string

◆ getName()

xmldb_object::getName ( )
inherited

This function will return the name of the xmldb_object.

Return values
string

◆ getNext()

xmldb_object::getNext ( )
inherited

This function will return the name of the next xmldb_object.

Return values
string

◆ getPrevious()

xmldb_object::getPrevious ( )
inherited

This function will return the name of the previous xmldb_object.

Return values
string

◆ hasChanged()

xmldb_object::hasChanged ( )
inherited

This function returns true/false, if the xmldb_object has changed.

Return values
bool

◆ isLoaded()

xmldb_object::isLoaded ( )
inherited

This function returns true/false, if the xmldb_object has been loaded.

Return values
bool

◆ loadXMLStructure()

xmldb_file::loadXMLStructure ( )

Load and the XMLDB structure from file.

Return values
true

◆ orderElements()

xmldb_object::orderElements ( $arr)
inherited

This function will order all the elements in one array, following the previous/next rules.

Parameters
array$arr
Return values
array|bool

◆ readableInfo()

xmldb_object::readableInfo ( )
inherited

This function will display a readable info about the xmldb_object (should be implemented inside each XMLDBxxx object)

Return values
string

Reimplemented in xmldb_field, xmldb_index, and xmldb_key.

◆ saveXMLFile()

xmldb_file::saveXMLFile ( )

This function saves the whole xmldb_structure to its file.

Return values
int|boolfalse on failure, number of written bytes on success

◆ setChanged()

xmldb_object::setChanged ( $changed = true)
inherited

This function will set the changed field of the xmldb_object.

Parameters
bool$changed

◆ setComment()

xmldb_object::setComment ( $comment)
inherited

This function will set the comment of the xmldb_object.

Parameters
string$comment

◆ setDTD()

xmldb_file::setDTD ( $path)

This function sets the DTD of the XML file.

Parameters
string

◆ setHash()

xmldb_object::setHash ( $hash)
inherited

This function will set the hash of the xmldb_object.

Parameters
string$hash

◆ setLoaded()

xmldb_object::setLoaded ( $loaded = true)
inherited

This function will set the loaded field of the xmldb_object.

Parameters
bool$loaded

◆ setName()

xmldb_object::setName ( $name)
inherited

This function will set the name field of the xmldb_object.

Parameters
string$name

◆ setNext()

xmldb_object::setNext ( $next)
inherited

This function will set the next of the xmldb_object.

Parameters
string$next

◆ setPrevious()

xmldb_object::setPrevious ( $previous)
inherited

This function will set the previous of the xmldb_object.

Parameters
string$previous

◆ setSchema()

xmldb_file::setSchema ( $path)

This function sets the schema of the XML file.

Parameters
string

◆ validateDefinition()

xmldb_object::validateDefinition ( xmldb_table $xmldb_table = null)
inherited

Validates the definition of objects and returns error message.

The error message should not be localised because it is intended for developers, end users and admins should never see these problems!

Parameters
xmldb_table$xmldb_tableoptional when object is table
Return values
stringnull if ok, error message if problem found

Reimplemented in xmldb_field, xmldb_index, and xmldb_table.

◆ validateXMLStructure()

xmldb_file::validateXMLStructure ( )

This function will check/validate the XML file for correctness Dynamically if will use the best available checker/validator (expat syntax checker or DOM schema validator.

Return values
true

The documentation for this class was generated from the following file: