конструктор класса - PullRequest
       9

конструктор класса

2 голосов
/ 21 июля 2010

Я пытаюсь понять, как классы и функции работают больше.Итак, я написал класс с 2 функциями внутри него.Затем инициировал класс с помощью

$fifaadmin = new FifaAdmin;

Когда я пытаюсь вызвать этот класс с другой страницы, я получаю следующую ошибку

Вызов функции-члена leagueToReplace () дляобъект

Что я делаю не так?Есть ли очевидный ответ?Спасибо

Ответы [ 4 ]

2 голосов
/ 21 июля 2010

Вам нужно создать экземпляр класса на каждой странице.Каждый скрипт выполняется независимо.

1 голос
/ 21 июля 2010

Если вы хотите использовать экземпляр класса на разных страницах, вам нужно его сериализовать и сохранить где-нибудь (сессия в порядке) и десериализовать его, когда вы хотите его использовать.сериализировать в PHP здесь http://php.net/manual/en/function.serialize.php

1 голос
/ 21 июля 2010

В зависимости от того, что делает ваш код, вы можете использовать статические методы:

// common.php
class Common {
    public static function calculate($x, $y) {
        return $x + $y;
    }
}

// another PHP file: (you still need to include common.php
// you won't need to instantiate the class

echo Common::calculate(10, 20);
1 голос
/ 21 июля 2010

Похоже, $fifaadmin не правильно создал объект.

Что это говорит?

var_dump($fifaadmin instanceof FifaAdmin);

Он должен вернуть true, если он настроен правильно.Попробуйте его непосредственно перед вызовом метода.

Когда вы говорите еще одну страницу , вы имеете в виду включение PHP или новый URL (и, следовательно, запрос)?

Вам нужно будет создавать его экземпляр при каждом запросе, так как HTTP не имеет состояния.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...