如何在字符串中回显关联数组的元素?

时间:2015-01-02 12:35:00

标签: php associative-array

我知道这是一个非常基本的问题,但我不得不问。

我有一个关联数组,让我们说它是:

 $couple = array('husband' => 'Brad', 'wife' => 'Angelina'); 

现在,我想在字符串中打印丈夫姓名。有很多方法,但我想这样做,但它给出了HTML错误

$string = "$couple[\'husband\'] : $couple[\'wife\'] is my wife.";

如果我使用错误的反斜杠语法,请纠正我。

8 个答案:

答案 0 :(得分:2)

您的语法是正确的。

但是,你仍然可以选择单引号而不是双引号。

因为可变插值,双引号有点慢。

(解析双引号内的变量,而不是单引号的情况。)

更优化和清理的代码版本:

$string = $couple['husband'] .' : ' . $couple['wife'] .' is my wife.';

答案 1 :(得分:1)

使用输出格式化字符串函数,例如printf

<?php printf("%s : %s is my wife.", $couple['husband'], $couple['wife']); ?> 

如果要将输出存储在变量中,则必须使用sprintf

结帐本次演示:http://codepad.org/kkgvvg4D

答案 2 :(得分:0)

试试这个

 <?php $string = $couple['husband']." : ". $couple['wife']." is my wife."; 
  echo  $string//Brad : Angelina is my wife.
 ?>

答案 3 :(得分:0)

要在字符串中使用数组,您需要使用{}:

$string = "{$couple['husband']} : {$couple['wife']} is my wife.";

否则解析器无法正确确定您要执行的操作。

答案 4 :(得分:0)

您可以这样做:

$string = "{$couple['husband']} : {$couple['wife']} is my wife.";

或者:

$string = $couple['husband'] . " : " . $couple['wife'] . " is my wife.";

答案 5 :(得分:0)

尝试

$string = $couple['husband']." : ".$couple['wife']." is my wife.";

答案 6 :(得分:0)

查看解决方案 -

  

$string = "$couple[husband] : $couple[wife] is my wife.";

如果您在double qoutes中使用整个字符串,则可以看到必须删除单引号和反斜杠。

更好的方法是 -

  

$string = $couple[husband].' : '.$couple[wife].' is my wife.';

答案 7 :(得分:0)

call_user_func_array('sprintf', array_merge(['%s : %s is my wife.'], $couple))