Не могу разобраться с функциями в ООП

88
13 марта 2021, 20:20

Есть такой код:

    <?php
include 'pest.php';
class Card
{
    public $token = '';
    public function GetToken()
    {
        $curlHandle = curl_init('https://vupsen.ru:9900/api/0/auth/access_token?user_id=test&user_secret=test');
        curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);
        $execResult = curl_exec($curlHandle);
        $info = curl_getinfo($curlHandle);
        $resultOrder = json_decode($execResult, true);
        return $resultOrder; //Тут нужное мне значение.
    }
    public function GetOrgList()
    {
        $token = $this->GetToken(); // Тут ошибка
        $curlHandle = curl_init('https://vupsen.ru:9900/api/0/organization/list?access_token='.$token);
        curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);
        $execResult = curl_exec($curlHandle);
        $info = curl_getinfo($curlHandle);
        $result = json_decode($execResult, true);
        $orgid = $result[6];
        return $orgid;
    }
}
?>

Простите, что глупый вопрос. Изучил все подобные ошибки, ничего найти не смог.

То есть мне нужно с функции GetToken получить токен и использовать его в функции GetOrgList в запросе. Заранее спасибо.

Answer 1

Так как вы вызываете метод статически(вот так Card::GetOrgList()), то и выходит ошибка которую вы описали. Потому что статические методы не могут использовать $this; Создайте экземпляр класса и вызывайте метод:

$card = new Card();
$list = $card->GetOrgList()
READ ALSO
Как достать из XYChart значения x и y?

Как достать из XYChart значения x и y?

У меня есть серия XYChart, которая заполняется при помощи циклаХотел был сделать отдельный цикл, который уже достает из этой серии отдельно x и y

84
Размер буфера InputStream

Размер буфера InputStream

Есть сокет сервер\клиент на Java данные собираюсь забирать из сокета большими блоками

120
Две @OneToOne Hibernate аннотации в одном Entity

Две @OneToOne Hibernate аннотации в одном Entity

Я пытаюсь написать запрос который будет выдавать все Entity из бд которые проходят фильтрацию, однако у меня возникает конфликт так-как я использую...

82
Jax-rs CRUD. Проблема с ошибкой Method Not Allowed

Jax-rs CRUD. Проблема с ошибкой Method Not Allowed

Ошибка: HTTP Status 405 - Method Not Allowed

113