单引号和双引号内的可变

时间:2012-07-24 02:40:13

标签: php syntax-error

我怎样才能让它发挥作用?

$step = $_SERVER['PHP_SELF']. '?&step=';
echo "<form action=". $step ."2"><select>";

它在第二行给了我一个(解析错误:语法错误,意外的'&lt;')。 HALP?

5 个答案:

答案 0 :(得分:4)

转义字符串中的引号:

echo "<form action=\"${step}2\"><select>";

这将解决您的问题,但在将属性值放入HTML之前,最好先将其转义:

echo "<form action=\"" . htmlspecialchars($step) . "2\"><select>";

答案 1 :(得分:3)

“2之后结束字符串。转义它或使用单引号。

$step = $_SERVER['PHP_SELF']. '?&step=';
echo "<form action=\"", $step , "2\"><select>";

答案 2 :(得分:2)

尝试转义双引号,或使用double / singe组合:

echo "<form action=\"". $step ."2\"><select>";

echo '<form action="'. $step .'2"><select>';

答案 3 :(得分:2)

尝试注意颜色编码。或者使用带有颜色编码的编辑器(如果没有颜色编码)。

echo '<form action="'.$step.'2"><select>';

答案 4 :(得分:1)

$step = $_SERVER['PHP_SELF']. '?&step=';
echo "<form action=". $step .'"2"><select>';

$step = $_SERVER['PHP_SELF']. '?&step=';
echo "<form action=". $step ."\"2\""><select>";
相关问题