-1

私はPHPが初めてなので、この質問が初心者である場合は申し訳ありません. 名前がわからないので見つけられませんでした。このコードでそれを読みました。どういう意味ですか?

5 行目:${$key}

<?php
    $expected = array( 'carModel', 'year', 'bodyStyle' );

    foreach( $expected AS $key ) {
        if ( !empty( $_POST[ $key ] ) ) {
            ${$key} = $_POST[ $key ];
        } else {
            ${$key} = NULL;
        }
    } 
?>
4

6 に答える 6

3

これは と同じで$$key、var という名前を意味します。$key

すなわち

$test = "foo";

と同じです

$a = "test";
$$a = "foo";
于 2013-03-21T13:30:25.600 に答える
2

可変変数です。ここで詳細をお読みください: http://php.net/manual/en/language.variables.variable.php

于 2013-03-21T13:30:08.760 に答える
1

表記法は、変数変数に使用される${$key}単純な文体の代替の文体です。$$key

その表記法を使用できる1つの特定のケースは、次のようなトリックを行う場合です。

$var = 'foo_x';
$key = 'x';
${'foo_' . $x} = 'hello';

echo $foo_x; // hello
于 2013-03-21T13:32:26.297 に答える
0

これは、動的変数名を使用する方法です。ここを参照してください:http://php.net/manual/en/language.variables.variable.php

于 2013-03-21T13:32:02.270 に答える
0

複雑な式を使用できます。

これは複雑な (カーリー) 構文と呼ばれ、 http://php.net/manual/en/language.types.string.php#language.types.string.parsing.complexで詳細を確認できます。

于 2013-03-21T13:33:26.763 に答える
0

$key という名前の変数を設定します。

$var = NULL;

$name = 'var';

${$name} = TRUE;

var_dump($var); // TRUE

としても:

$$name = TRUE;
于 2013-03-21T13:30:36.857 に答える