私はGuzzle非同期要求を使用して、オブジェクトのプロパティをAPIレスポンスに基づいて設定しようとしています。Async PHP(Guzzle)を使用した可変スコープ
下記の$myObj
のようなオブジェクトにアクセスするには、どのように応答ハンドラ内で操作しますか?
同様に、$myObj
にはアクセスできません。私は、クラス内で作業するときに、$this
が応答ハンドラからアクセス可能であることを発見しましたが、別の方法があることを期待しています。
$myObj;
$promise = $this->client->requestAsync('GET', 'http://example.com/api/someservice');
$promise->then(
function (ResponseInterface $res) {
$data = json_decode($res->getBody());
// How can I access vars like $myObj from here?
$myObj->setName($data->name);
// ... then persist to db
},
function (RequestException $e) {
}
};
[匿名関数でPHP変数(http://stackoverflow.com/questions/11420520/php-variables-in-anonymous-functions)の可能性の重複 – Devon