2016-07-14 11 views
0

にヒントはありませんオブジェクトのタイプについて私にヒントを与える。PhpStormのたPHPDoc配列は、私は次の定義を持っている私のコールバッククラスでは、外部ファイル

このクラスを使用する別のファイルから同じことをしようとしているとき、IDEは$entry[0]のヒントを知りません。

private function processEvent($body) 
{ 
    $callback = new Callback(json_decode($body, true)); 
    if (!is_array($callback->entry)) 
     return; 
    //iterate through all entries 
    foreach ($callback->entry as $entry) { 
     $entry->messaging; // - no hints here... 
    } 
} 

何故でしょうか?

+1

これはうまくいくはずです。私はこれをどこでも使用しています。完全修飾ネームスペースを試してみてください –

+0

もっと完全な例が必要です。ここでうまくいくと思われるので、あなたは何かが欠けているはずです。いずれにせよ、1) 'File | Invalidate Caches ... 'を実行し、IDEを再起動します。 2) '$ callback'と' - > entry'プロパティについてIDEが何を考えているかを調べる - 'View |それらの 'の簡単なドキュメント' 3)あなたはいつもローカルタイプヒントを提供することができます( 'foreach' - '/** @var Entry $ entry */' – LazyOne

答えて

0

問題を再現できます。コールバック(クラス1)の名前を変更すると、それが修正されました。また、PhpStormは$コールバックが "callable"型であると考えています。したがって、「コールバック」はおそらく予約語です。私のクラスの名前を変更した後、それは他のコールバック実装を提供しませんでした。

関連する問題