@msgumus
Bunlardan bağımsız olarak bir soru daha sormak istiyorum.
public function getCities($client)
{
return $client->sendRequest('getCities');
}
Paketteki fonksiyonlardan biri bu.
Bu metota ben istek attığımda:
$client->{'city'}->getCities()
$client->city->getCities($client)
$client->city->getCities()
3 şekilde de result alıyorum. Ama $client->city->getCities() gösterimi editör tarafından hata olarak gösteriliyor. Bunu engellemek adına ilgili sınıfı kalıtım ile parametrenin boş olabileceğini de belirtmem mi gerekiyor ?
Aynı şekilde Client classına verdiğim PHPDoc için * @property-read CityService $city yerine kalıtım yaptığım sınıfın ismini versem bu sorun çözülür ?
Yukarıda belirttiğim base classından kalıtım yaptım. Yeni bir method oluşturdum.
class CityServiceClass extends BaseCall
{
private $client;
/**
* @return mixed
*/
public function getCities()
{
return $this->client->sendRequest('getCities');
}
}
Client kalıtım classı:
PHPDoc için * @property-read CityServiceClass $city
Aradaki CityService metotunu aradan kaldırıp kendi classımdan devam etmiş oluyorum. Düşündüğüm kullanım doğru mudur?
Şu an dediğim gibi çalışıyor. Ama kullanımın doğruluğunu öğrenmek istiyorum
BaseCall metotundan kalıtım yapmamın sebebi de , __construct() içerisinde çağırdığı Request sınıfında default olarak $client false tanımlı. Burada da client açıyor. Client'ı buradan çektim.