查看下面的代码
<?php
//The array is storing a blog entry in it
$entry = array ('title' => 'sample title',
'date' => 'August 9, 2011',
'author' => 'daNullSet',
'body' => 'I shall become a web developer IA',);
echo "The title of the blog is ".$entry['title']."<br />";
?>
上面的代码执行得很好,但是当我在echo语句中与其他字符串连接时将$ entry ['title']括在双引号中时,它会返回以下解析错误。
解析错误:第7行的C:\ xampp \ htdocs \ php-ex \ test.php中的语法错误,意外的''(T_ENCAPSED_AND_WHITESPACE),期望标识符(T_STRING)或变量(T_VARIABLE)或数字(T_NUM_STRING)< / p>
你能指导一下错误的原因吗?我是编程的新手。谢谢
答案 0 :(得分:2)
要在字符串中使用关联数组中的值,您需要使用"complex (curly) syntax"。实际上,这意味着您需要将其包装在{}
中,如下所示:
echo "The title of the blog is {$entry['title']}<br />";
如果您尝试在不使用大括号的情况下直接在双引号字符串中使用“复杂”变量,则会收到您报告的解析错误。
完全值得你仔细阅读this entire page所以你知道什么是不允许的。
答案 1 :(得分:0)
<?php
//The array is storing a blog entry in it
$entry = array ('title' => 'sample title',
'date' => 'August 9, 2011',
'author' => 'daNullSet',
'body' => 'I shall become a web developer IA');
echo "The title of the blog is '".$entry['title']."'<br />";
?>
请试试这个
我希望它可以帮到你
答案 2 :(得分:0)
正如我所知,引起错误的原因是因为编译器总是检查开始和结束语法,如{},(),“”,''。当您启动语法时,您应该给它一个结束标记。如果我正确理解你的问题,你的问题是你想要添加“into”“。你可以使用\”来逃避编译器将其作为语法阅读。
echo "The title of the blog is \"".$entry['title']."\"<br/>";