2016-04-13 16 views
0

コールバック関数が設定されていて、コードを実行し、クエリを繰り返す必要がないという最も効率的な方法を考え出しました。コールバック関数によって作成された変数を取得して使用しますそれは関数の外側にあります。コールバック関数から変数を取得する

だから私はそうのような機能を持っている:

// Not as important. 
myCallbackFunction(callable $callback) { 
    // Some stuff executed. 
    $callback($VARIABLE); 
} 
// Front end of the code 
$OBJECT->myCallbackFunction(function($RANDOM)) { 
    $id = 1; // Example number that is given. 
}); 

だから私は、コールバック関数から$id変数を必要とするので、私は、フロントエンドでこのコードを追加:

global $id; 

は、使用しようとすると、その変数は空であるかのようになりますが、そこにあります。

コールバック関数から変数を取得するもう1つの方法はありますか?私はコールバックが新ですので、これが以前に尋ねられた、または簡単な修正であるなら、ごめんなさい。

答えて

0

コールバックから変数を返す必要があります。次に、変数を呼び出すコードで使用できるようになります。

<?php 
function runCallback($callback) { 
    $id = $callback(); 

    echo $id; // 1234 
} 

runCallback(function() { 
    $id = 1234; 
    return $id; 
}); 
関連する問題