我想声明变量
我收到错误
解析错误:语法错误,意外'预订' (T_STRING)
mycode的
$filters = "library&loc=local,scope:("book")&loc=local,scope:("book2")....";
$path = "http://xxxxx/place/search/institution=".$filters."";
行$filters=.....
中的是错误
并且我不想将"..."
更改为'...'
,因为我的结果是更改
答案 0 :(得分:3)
你需要逃避双引号:
$filters = "library&loc=local,scope:(\"book\")&loc=local,scope:(\"book2\")....";
或者,您可以对整个字符串使用单引号:
$filters = 'library&loc=local,scope:("book")&loc=local,scope:("book2")....';
这两个结果都是library&loc=local,scope:("book")&loc=local,scope:("book2")....
答案 1 :(得分:1)
您在变量中使用双引号导致错误。您需要转义这些引号,例如:
scope:(\"book\")
或使用单引号:
scope:('book')
同样适用于book2。
我希望这会有所帮助!
答案 2 :(得分:1)
@ ARR.s使用\之前“喜欢”尝试下面的一个:
<?php
$filters = "library&loc=local,scope:(\"book\")&loc=local,scope:(\"book2\")....";
$path = "http://xxxxx/place/search/institution=".$filters."";
答案 3 :(得分:1)
这应该解决它。在字符串的开头和结尾使用单引号:
$filters = 'library&loc=local,scope:("book")&loc=local,scope:("book2")....';
答案 4 :(得分:1)
你使用错误的双引号:
$filters = "library&loc=local,scope:("book")&loc=local,scope:("book2")....";
如果你想在使用双引号声明的字符串中使用双引号,你必须使用双引号:
$filters = "library&loc=local,scope:(\"book\")&loc=local,scope:(\"book2\")....";
无论如何,在php中使用双引号和单引号之间的区别是双引号被评估,在你的情况下你没有评估任何东西,所以你可以这样做(并且有点快,因为php不需要评估字符串)
$filters = 'library&loc=local,scope:("book")&loc=local,scope:("book2")....';
我建议您阅读php strings documentation以了解双引号和单引号字符串之间的区别以及字符串评估的工作原理