0

変数に格納されているPHPまたはHTMLコードを実行するPHP関数を作成する必要があります。それが一つの問題です。もう1つの問題は、関数が複数回作成され、一意の名前が必要になるため、名前を付けたのですが、これがの値から関数を作成するのか、それとも呼び出される関数を作成する$titleのかがわかりません。またはそれがうまくいかない場合。これは私のコードです:$title$title

$title = $_POST['sogo_aso_name'];
$output = $_POST['sogo_aso_output'];

ここにいくつかのコード...

function $title ($output)
{
    //Some Code Here to execute $output...
}

だから...それが私の問題です。$ outputを何がきれいに実行するのかわからないので、ページに表示できます。そして、関数がの値にちなんで名付けられるかどうかはわかりません$title

助けてくれてありがとう!

Ethan Brouwer

4

2 に答える 2

2

call_user_func次のように使用できます。

call_user_func($title, $output);

でも、ひとつの関数の名前を変えるのは本当に奇妙です。

于 2012-07-07T12:16:51.310 に答える
0

あなたがやろうとしていることは、残念ながら不可能です。関数のプレフィックスに共通名が必要な場合は、名前空間を作成できます。

namespace fArr {
    function func1 (args) {}
    function func2 (args) {}
}

それらを呼び出すには、次を使用できます。

namespace {
    fArr\func1($title, $output);
}

一般に、完全に匿名の関数を作成することは避けたいと考えています。おそらく、すべてのリクエストのタイトルと出力を処理する関数を作成します。または、func 名をプロパティとして新しいオブジェクトを作成し、それに出力を割り当てます。

$title  = $_POST['sogo_aso_name'];
$output = $_POST['sogo_aso_output'];

// Store data in an object named after the value of $title
// Note that constant use of this can get very messy, and very confusing
$$title = (object) array('output' => $output);
于 2012-07-07T12:30:12.637 に答える