Apabila menghadapi ralat "Undefined property: $client", cuba dapatkan maklumat.
P粉329425839
2023-08-26 23:10:36
<p>Saya menggunakan Laravel v5.8 dan guzzlehttp v7.4 dan cuba menulis pengawal ini untuk mendapatkan beberapa maklumat: </p>
<pre class="brush:php;toolbar:false;">fungsi awam __construct()
{
$client = new Client(['base_uri' => 'https://jsonplaceholder.typicode.com/']);
}
fungsi awam getInfo(Minta $request)
{
cuba {
$respons = $this->client->request('GET', 'posts');
dd($respons->getContents());
} tangkapan (ClientException $e) {
dd($e);
}
}</pre>
<p>Tetapi apabila saya memanggil kaedah <code>getInfo</code>
<p><strong>Sifat tidak ditentukan: AppHttpControllersTavanmandAppResultController::$client</strong></p>
<p>Walau bagaimanapun dokumentasi mengatakan untuk memanggil uri seperti ini. </p>
<p>Jadi apa masalahnya di sini? Bagaimanakah saya boleh menyelesaikan masalah ini? </p>
Jadikan
$client
pembolehubah global kelas ini.Kemudian tetapkan nilai dalam pembina:
Selamat mengekod...
Skop pembolehubah $client anda terhad kepada bahagian dalam pembina. Jika anda ingin mengaksesnya di tempat lain, anda perlu menetapkannya kepada beberapa jenis atribut kelas