Я ищу способ передать метод класса для параметра функции обратного вызова. Обычно я использую create_function() но я слышал, что он медленный и затрудняет отладку. add_action('init', create_function('', '$o = new AdminPageClass;')); class AdminPageClass { function __construct() { add_action('admin_menu', array(&$this, 'admin_menu')); } function admin_menu() { add_options_page( 'Sample Admin Page Class', 'Sample Admin Page Class', 'manage_options', 'sample_admin-page_class', array(&$this, […]
Я регулярно создаю класс с несколькими частными переменными. Когда экземпляр этого класса задан, должно быть возможно заполнить все переменные класса геттерами и сеттерами. Есть ли простой способ сделать это, не набирая все эти сеттеры и геттеры для каждой переменной при создании класса? теперь мне нужно набрать это для каждого var в классе public function setVar($var){ […]
В PHP можно сделать что-то вроде этого: myFunction( MyClass::staticMethod ); так что «myFunction» будет ссылаться на статический метод и иметь возможность его вызвать. Когда я пытаюсь, я получаю сообщение об ошибке «Неопределенная константа класса» (PHP 5.3), поэтому, я думаю, это невозможно, но есть ли способ сделать что-то подобное? Самое близкое, что мне удалось до сих […]
Я только начал изучать концепцию объектно-ориентированного программирования, и я написал этот класс с функциями. Он отлично работает, но мне интересно узнать, правильно ли я это сделал … Вот мой код: class Database{ const DB_HOSTNAME = 'localhost'; const DB_USERNAME = 'root'; const DB_PASSWORD = 'password'; const DB_NAME = 'shop'; protected $_db_connect; protected $_sql; protected $_result; protected […]
Я пытаюсь получить доступ к следующему и нужно получить значение ячейки [vid] . FieldCollectionItemEntity Object ( [fieldInfo:protected] => [hostEntity:protected] => stdClass Object ( **[vid]** => 119 [uid] => 1 [title] => My Page Name [log] => [status] => 1 [comment] => 1 [promote] => 0 [sticky] => 0 [vuuid] => 3304d1cf-e3cf-4c5a-884a-4abb565ddced [nid] => 119 [type] […]
Я рассматриваю этот вопрос в основном как программист на C ++ / C #, который может помочь взглянуть на вещи. Мне не удалось найти простой ответ на мой вопрос, поэтому я приношу свои извинения, если есть один доступный там. Кажется, это будет очень распространенная проблема. Предположим, что у меня есть класс A , который является […]
Это database.php class DatabaseConnection { private $host; private $port; private $dbname; private $username; private $password; public $query; function __construct($host, $port, $dbname, $username, $password) { $this->host = $host; $this->port = $port; $this->dbname = $dbname; $this->username = $username; $this->password = $password; try { $this->DBH = new PDO("pgsql:host=$this->host port=$this->port dbname=$this->dbname", "$this->username", "$this->password"); //echo "PDO connection object created"; } […]
Если у меня есть два класса A, B и один не расширяет другой, они являются отдельными, но оба загружаются в скрипт, я могу по-прежнему ссылаться на функцию в A из B? class A { function one() { echo "Class A"; } } class B { function two() { echo "Class B"; A::one(); } } $a […]
class List { public function hello() { return "hello"; } } $list = new List; echo $list::hello(); Дает ошибку: PHP Parse error: syntax error, unexpected 'List' (T_LIST), expecting identifier (T_STRING) in /home/WtGTRQ/prog.php on line 3 Изменение «List» на «Lizt» устраняет проблему. Я с грустью понимаю, что функции Php не чувствительны к регистру , но я […]
Должен был спросить кого-то это давным-давно. Каков наилучший способ использования других классов в другом классе? Например, скажем, у меня есть класс приложения: class Application { public function displayVar() { echo 'hello world'; } } и класс базы данных class Database { // connects to db on construct public function query() { // queries db } […]