Articles of Методы

Как я могу сделать регулярную переменную доступной в файлах, включенных методом класса?

У меня есть php-сайт, который протекает, как показано ниже. Обратите внимание, что я оставляю большую часть кода (везде, где есть эллипсы). index.php include template.php … $_template = new template; $_template->load(); … template.php class pal_template { … public function load() { … include example.php; … } example.php … global $_template; $_tempalate->foo(); … Теперь это прекрасно работает. […]

Использование объекта в методах других объектов

в этом случае я создаю объект sqlite3 в основном файле моего скрипта: $db = new sqlite3('file.sqlite'); теперь мне нужно получить доступ к файлу sqlite в других других методах других классов. Но каков наилучший способ доступа к объекту? Создавать каждый раз новый объект? Использовать в методе глобальное? global $db; Или доставить его в качестве аргумента? $object […]

Оптимизация процесса поиска MySQL

Вот сценарий 1. У меня есть таблица под названием «items», внутри таблицы есть 2 столбца, например item_id и item_name . Я храню свои данные таким образом: item_id | название предмета Ss001 | Shirt1 Sb002 | Shirt2 Tb001 | TShirt1 Tm002 | TShirt2 … и т. д., я храню таким образом: первая буква – это код […]

PHP / MySQL: как получить несколько значений из метода базы данных PHP

Извините за невероятно новый вопрос, но я вижу, как я дрейфую в плохие практики, если не спрашиваю. У меня есть метод PHP, который я хочу вернуть всем значениям данного столбца базы данных, чтобы разместить содержимое в выпадающем меню для HTML-формы. Я мог бы, очевидно, построить весь HTML в методе PHP и вернуть его в виде […]

В PHP методы кода объектов дублируются или используются между экземплярами?

В PHP, если вы создаете массив объектов, являются ли объектные методы (а не элементы данных) скопированы для каждого экземпляра объекта в массиве или только один раз? Я бы предположил, что по соображениям памяти последнее верно; Я просто хотел подтвердить сообществом StackOverflow, что это правда. Например, предположим, что у меня есть класс MyClass с несколькими методами, […]

PHP Вызов self по нестационарному методу

Почему в этом примере работает «сам» вызов несекретного метода? class A{ protected function aNonStaticMethod(){ return __class__; } public function aEcho(){ echo self::aNonStaticMethod(); } } Спасибо за объяснение.

PHP, различать вызов внутреннего и внешнего класса

Не могу обернуться вокруг этого, есть ли способ проверить, был ли метод вызван внутренне? Под этим я подразумеваю трассировку, чтобы проверить, был ли он вызван значением $ this, а не указателем на экземпляр. Вроде как понятие частной функции, но только функция общедоступна? <?php class Foo { public function check () { /* if invoked by […]

доступ к статическим методам с использованием имени класса переменной (PHP)

Я пытаюсь получить доступ к статическому методу, но используя переменную как имя класса. Это возможно? Кажется, у меня проблемы с этим. Я хочу сделать что-то вроде этого: class foo { public static function bar() { echo 'test'; } } $variable_class_name = 'foo'; $variable_class_name::bar(); И я хочу, чтобы иметь возможность делать подобное, используя статические переменные.

Проверьте, имеет ли класс метод PHP

В настоящее время мой код выглядит так: switch ($_POST['operation']) { case 'create': $db_manager->create(); break; case 'retrieve': $db_manager->retrieve(); break; … } Я хочу, чтобы проверить, существует ли метод, называемый $_POST['operation'] : если да, тогда назовите его, иначе echo «error» Возможно ли это? Как я могу это сделать?

Публичные функции и функции в CodeIgniter

В PHP, В чем разница между объявлением методов внутри класса, например public function VS Например: public function contact() { $data['header'] = "Contact"; $this->load->view('admin/admin_contact', $data); } В.С. function contact() { $data['header'] = "Contact"; $this->load->view('admin/admin_contact', $data); } Лучше ли использовать публичную функцию или функцию и почему?