2012-02-01 44 views
0

我是新来的PHP,所以请原谅我,如果这是一个愚蠢的问题。变量中使用的变量

如何在变量中包含变量?

我的意思是:

<?php 

    $variable_a = 'Adam'; 
    $variable_b = '$variable_a'; 

?> 

换句话说,第二个变量是相同的第一个。我不会打扰解释为什么我需要这样做(它会让你感到困惑!),但我只想知道它是否可能,其次是如何去做,因为我知道那里的代码没有'工作。

干杯,

亚当。

+0

最好不要用引号来编写,但如果要使用引号,则使用双引号而不是单引号。 – Narek 2012-02-01 10:17:29

+0

http://stackoverflow.com/questions/3446216/difference-between-single-quote-and-double-quote-string-in-php – Narek 2012-02-01 10:18:17

+0

不要忘记:[PHP变量](http://www.php.net /manual/en/language.variables.basics.php) – 2012-02-01 10:20:35

回答

2

如果你想要的变量是平等的,使用方法:

$variable_b = $variable_a; 

如果你想第二个变量包含第一,使用variable parsing

$variable_b = "my other variable is: $variable_a"; 

或串联:

$variable_b = 'my other variable is: ' . $variable_a; 
+0

完美的感谢之人 – 2012-02-01 10:22:56

4

不要使用引号,它们表示一个字符串。只需指向变量直接,就像这样:

$variable_b = $variable_a; 
+0

啊!所以你不包括报价。难怪它是以文本形式输出。感谢队友完美! – 2012-02-01 10:18:34

1

要么没有引号直接引用变量,因为报价意味着它是一个字符串

$variable_b = $variable_a; 

或者你可以在双引号ommit变量,如果你希望它出现在一个字符串中。

$variable_b = "My name is $variable_a"; 
2

PHP在产生基于另一个字符串变量的值时具有这种优势。要做到这一点,像这样写代码:

$b = "My name is $name."; 

下面的代码无法正常工作:

$b = '$name'; 

等场合中,编码这样的作品有:

$b = <<<STRING 
    Hello, my name is $name... 
STRING; 

如果你想访问阵列,请使用:

$b = "My ID is {$id['John Smith']}."; 

,当然,

$b = <<<STRING 
    Hello, my name is {$username}, my ID is {$id['John Smith']}. 
STRING; 

我建议使用{},因为我经常使用中国的字符集,其中一次编码像

$b = "我是$age了。"; 

将使PHP查找变量$时代了。和原因错误。