cakephp2-php8/libs/object.php

92 lines
2.6 KiB
PHP
Raw Normal View History

<?PHP
//////////////////////////////////////////////////////////////////////////
// + $Id$
// +------------------------------------------------------------------+ //
// + Cake <https://developers.nextco.com/cake/> + //
// + Copyright: (c) 2005, Cake Authors/Developers + //
// + Author(s): Michal Tatarynowicz aka Pies <tatarynowicz@gmail.com> + //
// + Larry E. Masters aka PhpNut <nut@phpnut.com> + //
// + Kamil Dzielinski aka Brego <brego.dk@gmail.com> + //
// +------------------------------------------------------------------+ //
// + Licensed under The MIT License + //
// + Redistributions of files must retain the above copyright notice. + //
// + See: http://www.opensource.org/licenses/mit-license.php + //
//////////////////////////////////////////////////////////////////////////
uses('log');
/**
* Purpose: Object
* Allows for __construct to be used in PHP4.
*
* @filesource
* @author Cake Authors/Developers
* @copyright Copyright (c) 2005, Cake Authors/Developers
* @link https://developers.nextco.com/cake/wiki/Authors Authors/Developers
* @package cake
* @subpackage cake.libs
* @since Cake v 0.2.9
* @version $Revision$
* @modifiedby $LastChangedBy$
* @lastmodified $Date$
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
*/
class Object {
/**
* A hack to support __construct() on PHP 4
* Hint: descendant classes have no PHP4 class_name() constructors,
* so this one gets called first and calls the top-layer __construct()
* which (if present) should call parent::__construct()
*
* @return Object
*/
function Object() {
$args = func_get_args();
register_shutdown_function(array(&$this, '__destruct'));
call_user_func_array(array(&$this, '__construct'), $args);
}
/**
* Class constructor, overriden in descendant classes
*/
function __construct() {
}
/**
* Class destructor, overriden in descendant classes
*/
function __destruct() {
}
/**
* Object-to-string conversion
* Each class can override it as necessary
*
* @return string this class' name
*/
function toString () {
return get_class($this);
}
/**
* API for logging events
*
* @param string $msg
* @param string $type
*/
function log ($msg, $type=LOG_ERROR) {
if (!$this->_log)
$this->_log = new Log ();
switch ($type) {
case LOG_DEBUG:
return $this->_log->write('debug', $msg);
default:
return $this->_log->write('error', $msg);
}
}
}
?>