使用里面的变量回显HTML锚点非常困惑。PHP变量和字符串
<?php
echo ' <a href="?p=".$current_page +1".">Next</a>';
?>
我已经尝试了很多我失败过的尝试过的变体。其中一个尝试是花括号{
但仍然没有。我知道我让我的单引号和双引号混淆起来!
有人请让我直接在这一个。另外,PHP中的撇号和引号的规则是什么。如果我想回应一些事情,我该怎么开始,撇号或引用。
使用里面的变量回显HTML锚点非常困惑。PHP变量和字符串
<?php
echo ' <a href="?p=".$current_page +1".">Next</a>';
?>
我已经尝试了很多我失败过的尝试过的变体。其中一个尝试是花括号{
但仍然没有。我知道我让我的单引号和双引号混淆起来!
有人请让我直接在这一个。另外,PHP中的撇号和引号的规则是什么。如果我想回应一些事情,我该怎么开始,撇号或引用。
<?php
echo ' <a href="?p='.($current_page + 1).'">Next</a>';
?>
如果你想在回声中做一些其他技巧的数学,你需要将它包括在括号中。
编辑:@DaveRandom指出,诡计子句的例外是$var++
和++$var
。
如果在打印字符串时使用'
,则里面的所有内容都将被视为文本。
如果您使用"
,则传入的变量将转换为其值。
但是不可能在"
里面进行数学运算。你必须逃避它并以'PHP方式'来完成。
<?php
echo ' <a href="?p=' . ($current_page +1) .'">Next</a>';
?>
我假设你想这样做:
echo ' <a href="?p='.($current_page + 1)'.">Next</a>';
你可以试试这个
$link = ' <a href="?p=%d">%s</a>';
printf($link, $current_page - 1, "Prev");
printf($link, $current_page + 1, "Next");
使用双引号"something"
和环绕用花括号中的变量时,他们是引号内。
echo " <a href='?p={$current_page+1}'>Next</a>";
你也可以使用字符串连接,这基本上意味着加入了几个字符串连接在一起:
echo 'something' . 'something else' . $my_variable;
至于逃避,如果里面的一些报价的任何地方,你要插入相同类型的报价(例如,如果你用双引号包围你的脚本,并且你想插入一个双引号),你需要通过在前面加上一个反斜杠来将这些引号转义 - \
。
例如,你想输出<a href="#url">Text</a>
和你在双引号包围它,你需要用一个反斜杠\
前面加上他们逃离href属性这些双引号,所以结果应该是<a href=\"#url\">Text</a>
。
以下是逸出并显示字符的有效方法:
echo "it\" so nice to be here";
echo 'it\'s so nice to be here';
echo "it's so nice to be here"; // Different quotes, no need to escape
echo 'it"s so nice to be here'; // Different quotes, no need to escape
下面将导致一个错误:
echo 'it's so nice the be here';
由于PHP解释将假定表达式将与结束在it's
中找到引用,导致正在处理的行的其余部分是无效的代码。
有关更多信息,您可以阅读echo()函数的PHP文档以及有关Quotes and Strings的精彩文章。
现货!这是我忘记的括号。非常感谢。 – ShadowStorm
@ShadowStorm我认为你的报价也需要一些小玩意,但这很容易解决。 – Fluffeh
'如果你想在回声中做一些其他技巧的数学,你需要将它包括在括号中。“ - 这个规则的例外是'$ var ++'和'++ $ var'。虽然实际上也有一个技巧来调用函数而不用使用变量变量引用引号,但它太可怕了,我甚至不会因为担心某个人使用它而发布它。 – DaveRandom