2015-04-04 22 views
0

我想以字符串形式打印某些代码块。该块包含字符串以及变量。Yii:以字符串形式打印代码

echo "array(
      'name' => 'postby_id', 
      'value' => '$data->postby->username', 
      'filter' => CHtml::listData(User::model()->findAll(), 'id', 'username') 
    ),"; 
+3

什么是你想要的输出?目前还不清楚你在问什么。请[编辑]你的问题。 – 2015-04-04 17:47:01

+0

你正在编写一个教程,代码需要作为代码显示,还是你希望在屏幕上显示数组的结果,比如'print_r()'? – RST 2015-04-04 17:48:11

+0

@TomFenech,我打算改变我的模板代码。所以,我想按照原样显示代码。在我的问题中有一个变量,$ data-> postby-> username。变量sholud被打印,因为它不是它的值。 ''在这种情况下不起作用并且“”需要价值。 – ersks 2015-04-05 07:52:51

回答

0

我想你可以做的是一样的东西

<?php 
// some code 
?> 
array(
     'name' => 'postby_id', 
     'value' => '$data->postby->username', 
     'filter' => CHtml::listData(User::model()->findAll(), 'id', 'username') 
    ), 
<?php 
// rest of your code 

只是在一个PHP文件的方式,您可以输出HTML。但我不确定自己完全明白你想要做什么。

+0

不,这不是我期待的解决方案。应该打印回显“”中的所有代码和文本。如果所有行仅打印一行,我可以接受。感谢您的答复。 – ersks 2015-04-05 11:24:07

+0

对不起,我不知道你在找什么。 – RST 2015-04-05 23:00:33

0

只要翻转单引号和双引号,你应该很好去。

PHP解析双引号字符串的内容,并不解析单引号字符串的内容。当它们出现在单引号的字符串 特殊字符

不像双引号和定界符语法,变量和转义序列 不会扩大。

PHP Manual -> Language -> Reference -> Types -> Strings

例如,如果你想不评估变量(和其他的东西),这样做:

$var = 'not printed'; 
echo 'The variable $var is not to be evaluated'; 

将打印:

变量$ var不被评估

$var = 'not printed'; 
echo "The variable is not $var"; 

将打印:

变量不是不打印