#php
#php
Вопрос:
Итак, у меня есть класс, и я создал объект класса вне его. Когда я пытаюсь выполнить функцию createSummonerBasicArray(), я получаю эту ошибку "Fatal error: Call to undefined function prepSummonerBasic()"
. Так что, по-видимому, это говорит prepSummonerBasic()
о том, что не существует. Я попытался сделать обе функции общедоступными, и это не изменило ошибку. Кстати, новое в PHP.
Class SummonerSearch{
function prepSummonerBasic($summoner, $server) {
}
function createSummonerBasicArray($summoner, $server){
$summonerBasic = prepSummonerBasic($summoner, $server);
}
};
$obj = new SummonerSearch('crippy', 'na');
$obj->createSummonerBasicArray('crippy','na');
Комментарии:
1. Вы пробовали
$this->prepSummonerBasic(...)
?2. Я этого не делал, но это было решение.
Ответ №1:
function createSummonerBasicArray($summoner, $server){
$summonerBasic = $this->prepSummonerBasic($summoner, $server);
}
вы должны вызывать ее с $this->
помощью, а не как в java
Комментарии:
1. Спасибо за быстрый ответ! Это сработало, но не могли бы вы немного объяснить, почему $this-> необходимо?
Ответ №2:
Попробуйте это с помощью используемого static
ключевого слова:
<?php
Class SummonerSearch{
public static function prepSummonerBasic($summoner, $server) {
echo $summoner;
}
function createSummonerBasicArray($summoner, $server){
$summonerBasic = self::prepSummonerBasic($summoner, $server);
}
};
$obj = new SummonerSearch('crippy', 'na');
$obj->createSummonerBasicArray('crippy','na');
?>