开始PhP:保护引号
我是PHPN00B。我正在阅读一些在线教程,但我已经有一个问题(我想这是一个非常基本的问题): 我不明白为什么以下代码可以正常工作:开始PhP:保护引号,php,html,double-quotes,Php,Html,Double Quotes,我是PHPN00B。我正在阅读一些在线教程,但我已经有一个问题(我想这是一个非常基本的问题): 我不明白为什么以下代码可以正常工作: <html> <head> <title> My Firts PHP page </title> </head> <body> <?php $userAgent = $_SERVER["HTTP_USER_A
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<?php
$userAgent = $_SERVER["HTTP_USER_AGENT"];
echo "<p>This is my awesome User Agent: <b>\"$userAgent\"</b></p>";
?>
</body>
</html>
我的第一个PHP页面
尽管我保护括号内的引号,但以下内容不起作用:
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<?php
echo "<p>This is my awesome User Agent: <b>$_SERVER[\"HTTP_USER_AGENT\"]</b></p>";
?>
</body>
</html>
我的第一个PHP页面
先谢谢你 转义引号的错误用法。请参阅并测试以下内容:
echo "<p>This is my awesome User Agent: <b>". $_SERVER["HTTP_USER_AGENT"] ."</b></p>";
echo”这是我最棒的用户代理:“$_服务器[“HTTP用户代理”]。“”;
转义引号的错误用法。请参阅并测试以下内容:
echo "<p>This is my awesome User Agent: <b>". $_SERVER["HTTP_USER_AGENT"] ."</b></p>";
echo”这是我最棒的用户代理:“$_服务器[“HTTP用户代理”]。“”;
您可以尝试以下方法之一:
花括号允许在字符串中使用复杂表达式
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<?php
echo "<p>This is my awesome User Agent: <b>{$_SERVER[\"HTTP_USER_AGENT\"]}</b></p>";
?>
</body>
</html>
我的第一个PHP页面
更好的是,只需对输出的片段使用php
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<p>This is my awesome User Agent: <b><?php echo $_SERVER["HTTP_USER_AGENT"]; ?></b></p>
</body>
</html>
我的第一个PHP页面
这是我最棒的用户代理:
您可以尝试以下方法之一:
花括号允许在字符串中使用复杂表达式
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<?php
echo "<p>This is my awesome User Agent: <b>{$_SERVER[\"HTTP_USER_AGENT\"]}</b></p>";
?>
</body>
</html>
我的第一个PHP页面
更好的是,只需对输出的片段使用php
<html>
<head>
<title> My Firts PHP page </title>
</head>
<body>
<p>This is my awesome User Agent: <b><?php echo $_SERVER["HTTP_USER_AGENT"]; ?></b></p>
</body>
</html>
我的第一个PHP页面
这是我最棒的用户代理:
您可以在字符串中包含一个变量,如下所示:
echo "<p>This is my awesome User Agent: <b>{$_SERVER["HTTP_USER_AGENT"]}</b></p>";
echo“这是我最棒的用户代理:{$\u服务器[“HTTP\u用户代理”]}”;
如果你使用它,它会更好更干净
echo "<p>This is my awesome User Agent: <b>". $_SERVER["HTTP_USER_AGENT"] ."</b></p>";
echo”这是我最棒的用户代理:“$_服务器[“HTTP用户代理”]。“”;
或者在数组键中不使用单引号
echo "<p>This is my awesome User Agent: <b>$_SERVER[HTTP_USER_AGENT]</b></p>";
echo“这是我最棒的用户代理:$\u服务器[HTTP\u用户\u代理]”;
您可以在字符串中包含一个变量,如下所示:
echo "<p>This is my awesome User Agent: <b>{$_SERVER["HTTP_USER_AGENT"]}</b></p>";
echo“这是我最棒的用户代理:{$\u服务器[“HTTP\u用户代理”]}”;
如果你使用它,它会更好更干净
echo "<p>This is my awesome User Agent: <b>". $_SERVER["HTTP_USER_AGENT"] ."</b></p>";
echo”这是我最棒的用户代理:“$_服务器[“HTTP用户代理”]。“”;
或者在数组键中不使用单引号
echo "<p>This is my awesome User Agent: <b>$_SERVER[HTTP_USER_AGENT]</b></p>";
echo“这是我最棒的用户代理:$\u服务器[HTTP\u用户\u代理]”;
您基本上找到了一个边缘案例。在PHP中,字母数字数组键需要加引号,而在双引号字符串中,它们需要不加引号:
echo“这是我最棒的用户代理:$\u服务器[HTTP\u用户\u代理]”;
字符串解析遵循自己的规则。一般来说,您不能将随机PHP代码放入字符串中并让其执行。您基本上已经找到了一个边缘案例。在PHP中,字母数字数组键需要加引号,而在双引号字符串中,它们需要不加引号:
echo“这是我最棒的用户代理:$\u服务器[HTTP\u用户\u代理]”;
字符串解析遵循自己的规则。一般来说,您不能将随机PHP代码放入字符串中并执行它。有什么不起作用?它会抛出错误吗?它不是完全输出的吗?无论如何,最好不要将变量与字符串文字混合在一起。这使您的代码阅读起来非常困难是的,很抱歉:出现了一个错误:“语法错误意外”(T_封装的_和_空白)需要标识符(T_字符串)或变量(T_变量)或数字(T_NUM_字符串)“最好的办法是阅读手册:什么东西不管用?它会抛出错误吗?它不是完全输出的吗?无论如何,最好不要将变量与字符串文字混合在一起。这让你的代码读起来非常痛苦是的,对不起:有一个错误:“语法错误意外”(T_封装的_和_空格)期望标识符(T_字符串)或变量(T_变量)或数字(T_NUM_字符串)“如果你阅读手册,最好是:我可以在字符串中包含一个变量,也不带括号。可能只有在它是“简单”的情况下“变数。我可以这样做:echo“我的名字是$name$姓氏”;如果没有遇到错误,我可以在字符串中包含变量,也可以不使用括号。也许只有当它是一个“简单”变量时。我可以这样做:echo“我的名字是$name$姓氏”;无误