Files
dominik/public/system/config/engine/proxy.php
T
Konstantin 80e5820c47 Refactor engine structure: remove legacy files and introduce new architecture
- Deleted legacy model.php, proxy.php, registry.php, and router.php files.
- Added new action.php, controller.php, event.php, loader.php, model.php, proxy.php, registry.php, and router.php files to implement a more modular and maintainable structure.
- Introduced an event-driven architecture for better extensibility.
- Updated loader functionality to handle controllers, models, views, libraries, helpers, and configurations.
- Ensured compatibility with OpenCart standards and improved error handling.
- Created a new DDEV configuration file for streamlined development environment setup.
2026-06-12 11:14:59 +03:00

54 lines
1.0 KiB
PHP

<?php
/**
* @package OpenCart
* @author Daniel Kerr
* @copyright Copyright (c) 2005 - 2017, OpenCart, Ltd. (https://www.opencart.com/)
* @license https://opensource.org/licenses/GPL-3.0
* @link https://www.opencart.com
*/
/**
* Proxy class
*/
class Proxy {
/**
*
*
* @param string $key
*/
public function __get($key) {
return $this->{$key};
}
/**
*
*
* @param string $key
* @param string $value
*/
public function __set($key, $value) {
$this->{$key} = $value;
}
public function __call($key, $args) {
$arg_data = array();
$args = func_get_args();
foreach ($args as $arg) {
if ($arg instanceof Ref) {
$arg_data[] =& $arg->getRef();
} else {
$arg_data[] =& $arg;
}
}
if (isset($this->{$key})) {
return call_user_func_array($this->{$key}, $arg_data);
} else {
$trace = debug_backtrace();
exit('<b>Notice</b>: Undefined property: Proxy::' . $key . ' in <b>' . $trace[1]['file'] . '</b> on line <b>' . $trace[1]['line'] . '</b>');
}
}
}