PHP / PayPal - Как сделать вызов статических функций из методов в другом объекте? - PullRequest
0 голосов
/ 11 июля 2019

Я реализую платеж PayPal в рамках проекта.

Следуя инструкциям PayPals, я создал процедурный php-файл для получения платежа пользователей.Это сработало, и я сделал следующий шаг, чтобы сделать его классом.

В этом классе я вызываю статический метод из класса, предоставляемого PayPal.Этот вызов возвращает ошибку:

Неустранимая ошибка: невозможно получить доступ к пустому свойству в строке xy.

По этой строке:

use PayPal\Api\Payment;

theкласс становится доступным.

В этой строке выдается ошибка:

/*xy=>*/ $this->payment = Payment::get ( $this->paymentId, $this->apiContext );

Сначала я проверил, что $this->paymentId и $this->apiContext заполнены и не пусты.

(xy=> - номер строки).

обычно я разделяю переменные по строкам, но редактор здесь не поддерживает его, поэтому не удивляюсь, почему я попытался поэкспериментировать только с paymentID, а не с apiContext.Это потому, что apiContext находится в следующей строке (xy + 1) в моем исходном коде.

Я попытался передать том $this->paymentId в переменную $abc, а затем попытался вызвать:

$abc = $this->paymentId;
/*xy=>*/ $this->payment = Payment::get ( $abc, $this->apiContext );

Затем я попытался создать экземпляр класса PayPal перед вызовом функции, например:

$ppobj= new \PayPal\Api\Payment();
/*xy=>*/ $this->payment = $ppobj->Payment::get ( $this->paymentId, $this->apiContext );

И я попробовал сделать вызов типа:

$this->payment = \PayPal\Api\Payment::get( $this->paymentId, $this->apiContext );

Пожалуйста, будьте так добры искажи мне, что я делаю неправильно и что я должен делать.

...