关于PHP中echo的一个问题
我在SAE中写如下PHP代码如下echo$a;a是任意变量正确echo"$a";a是任意变量加上引号正确$a=$_GET["id"];echo$a;a赋值为id传递过来的...
我在SAE中写如下PHP代码
如下
echo $a; a是任意变量 正确
echo "$a";a是任意变量 加上引号 正确
$a=$_GET["id"];
echo $a; a赋值为id传递过来的值,正确
echo "$a"; a赋值为id传递过来的值,,加上引号,正确
但是
如果
echo $_GET["id"]; 正确
echo "$_GET["id"]"; 即 给 $_GET[]加上引号以后就提示不正确了,请问为什么 展开
如下
echo $a; a是任意变量 正确
echo "$a";a是任意变量 加上引号 正确
$a=$_GET["id"];
echo $a; a赋值为id传递过来的值,正确
echo "$a"; a赋值为id传递过来的值,,加上引号,正确
但是
如果
echo $_GET["id"]; 正确
echo "$_GET["id"]"; 即 给 $_GET[]加上引号以后就提示不正确了,请问为什么 展开
3个回答
展开全部
基本的语法错误,改成下面都可以:
echo "$_GET["."id"."]";
echo "$_GET['id']";
echo "$_GET["."id"."]";
echo "$_GET['id']";
追问
很遗憾 你这两种都不可以
我试过 唯一可以的是echo "$_GET[id]"; 目前为止 想不通啊
追答
普通的变量或者字符串没问题,但你是用全局变量数组,$_GET[id]这样不规范,数组索引是字符的应该加单引号。双引号解析的是变量或者字符串,单引号只当字符串解析,你可以这样试试:
echo "{$_GET['id']}";应该没问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
echo "$_GET["id"]"; 引号不像中文的引号分前引号和后引号,在编程语言中,有两个引号就算一个字符串,所以上面的就不能解释过去了。
"$_GET[" 是一个字符串,中间的“id”是什么东西,编译不了就出错了
"$_GET[" 是一个字符串,中间的“id”是什么东西,编译不了就出错了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
改成这样:
echo "$_GET['id']";
因为你把引号用烂了。
echo "$_GET['id']";
因为你把引号用烂了。
更多追问追答
追问
确实是引号问题
但是你这个方法还是不行
我改成 "$_GET[id]"
就可以
但是$_GET[id] 这种用法是不规范的 可能是因为兼容性 所以才正确
追答
是这样的,使用$_XXXXX[]这样的内置全局变量,就不应该使用引号引起来。
所以,不论是echo "$_GET["id"]"; 还是echo "$_GET['id']"; 都是不对的。。可能会引起notice或者warning 级错误。
在这个地方,你应该使用 echo $_GET["id"]; 或者 echo $_GET['id'];
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询