Я пытаюсь создать экземпляр класса (модель Laravel3 Eloquent) переменной, и я получаю сообщение о том, что класс не найден. Однако, когда я жестко кодирует имя класса, он работает отлично. (FYI, в коде ниже $contact_type ожидается либо телефон, факс, либо электронная почта). Вот что я сейчас играю: foreach( $input AS $contact_type => $contact_info ) { foreach( […]
Я пытаюсь решить эту ошибку: Fatal error: Cannot redeclare class Я искал везде, и я не могу найти, где был создан экземпляр класса. В любом случае я могу распечатать информацию об отладке существующего экземпляра этого класса.
Это единственный способ проверить, является ли объект экземпляром класса, в моем случае класса DateTime? $cls = ReflectionClass("DateTime"); if (! $cls->isInstance( (object) $var ) ) { // is not an instance } Мне это немного тяжело.
Я разрабатываю сайт с помощью codeigniter. Теперь, обычно, когда вы используете класс в codeigniter, вы в основном используете его, как если бы это был статический класс. Например, если я возглавляю модель под названием «пользователь», я сначала загружу ее, используя $this->load->model('user'); и чем, я мог бы вызывать методы в этом пользовательском классе, например $this->user->make_sandwitch('cheese'); в приложении, […]
Недавно я узнал о StackOverflow, что мы можем получить «идентификатор экземпляра» любого ресурса , например: var_dump(intval(curl_init())); // int(2) var_dump(intval(finfo_open())); // int(3) var_dump(intval(curl_init())); // int(4) var_dump(intval(finfo_open())); // int(5) var_dump(intval(curl_init())); // int(6) Мне нужно что-то подобное, но применяется к классам: class foo { public function __construct() { ob_start(); var_dump($this); // object(foo)#INSTANCE_ID (0) { } echo preg_replace('~.+#(\d+).+~s', '$1', […]
Я пытаюсь сделать какую-то функцию, которая загружает и создает экземпляр класса из заданной переменной. Что-то вроде этого: <?php function loadClass($class) { $sClassPath = SYSPATH."/classes/{$class}.php"; if (file_exists($sClassPath)) { require_once($sClassPath); $class = $class::getInstance(); } } ?> Если я использую его так: <?php loadClass('session'); ?> Он должен включать и создавать экземпляр класса сеанса. BTW: статическая функция getInstance поступает […]
есть ли возможность «вызвать» экземпляр класса строковым представлением? В этом случае я бы ожидал, что код будет выглядеть так: class MyClass { public $attribute; } $obj = getInstanceOf( "MyClass"); //$obj is now an instance of MyClass $obj->attribute = "Hello World"; Я думаю, что это должно быть возможно, так как SoapClient от PHP принимает список classMappings, […]