2011-07-11 17 views
0

PHPでは、関数eval()を使わずに、ネイティブメソッドのみを使って関数(またはクラス)エイリアスを作成できるかどうかを知りたいです。 Evalは一部の開発者に推奨されていませんし、フレームワークを構築しています - 私はevalも使用しない方が良いです。それがすべてです関数を使用せずにエイリアスを作成する

eval('function aliases_x(){ return x(); }'); 

現在、私のような何かをします!

Bye。

を編集してください:私は自動方法でそれを行う必要があります。

例:

function create_aliases($real_method, $new_name) { ... } 

create_aliases('x', 'aliasses_x'); 
+0

evalを使用せずに関数を通常作成するだけではどうですか? – EdoDodo

答えて

4

まあ、クラスのエイリアスに、あなたはclass_aliasを使用することができます。関数のエイリアスを設定するには、少し制限があります。私が見た多くの提案は、create_functionまたは新しい匿名関数の構文の使用を提案しました

$aliases_x = function($v) { return x($v); }; 
// OR 
$aliases_x = create_function('$v', 'return x($v);'); 
+0

'class_alias'に関する良いことです。関数について両方のメソッドは私の問題を解決しません:(しかし、私はその関数のエイリアスをもう必要としません。 –

関連する問題