有个关于PHP的小问题,帮个忙

Lyf200820 2010-08-08 10:55:29
<?
include("conn.php");
$sqldh="select * from daohang";
$querydh=mysql_query($sqldh);
while($rowdh=mysql_fetch_array($querydh))
{
?><a href=<? echo $rowdh['url'] ?> > <? echo $rowdh['name'] ?></a> <?
}
?>

我想知道那两对<? ?>各有什么作用,为什么这样写 有点看不明白。
...全文
109 点赞 收藏 14
写回复
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lyf200820 2010-08-08
我只是想知道去掉{ 的下面<?
和去掉 } 的上面?>
这刚好也是去掉了一对
剩下来的也刚好配对
怎么就不能输出?

不知道我有没有说的清楚
回复
toury 2010-08-08
[Quote=引用 8 楼 lyf200820 的回复:]

能不能直接说一下??
我是个新手
为什么不行??
[/Quote]
简单的说,动态网页通常都是服务器端代码和客户端代码混写的。与静态网页只把写死的内容呈现给客户端用户不同,动态网页通过服务端代码可以处理客户端提交的请求要求,从而实现互动,因此称之为【动态】。

而表现形式就是:
客户端代码是以普通的HTML代码为基础、为呈现形式;
服务端代码的标志根据使用语言的不同而不同。例如ASP是<%=xxx%>、PHP是<?php echo xxx?>;

因此你说的取消几个<? ?>来简化程序是行不通的但你可以把客户端代码用服务端代码形式呈现出来,例如:
<html>
<head></head>
<body>
<?php echo "hello lyf!";?>
</body>
</html>
----->
<?php
echo "<html>";
echo "<head></head>";
echo "<body>";
echo "hello lyf!";
echo "</body>";
echo "</html>";
?>
回复
Lyf200820 2010-08-08
能不能直接说一下??
我是个新手
为什么不行??
回复
床上等您 2010-08-08
[Quote=引用 6 楼 lyf200820 的回复:]

能不能把第一个大括号下面那个?>
和第二个大括号上面的 <?一起去掉 这样也可以配对了。
[/Quote]
。。。。很无语。建议看基础语法
回复
Lyf200820 2010-08-08
能不能把第一个大括号下面那个?>
和第二个大括号上面的 <?一起去掉 这样也可以配对了。
回复
amani11 2010-08-08
你仔细看看结构,<? ?>配对

总共有4段
回复
igaojie 2010-08-08

<?
include("conn.php");
$sqldh="select * from daohang";
$querydh=mysql_query($sqldh);
while($rowdh=mysql_fetch_array($querydh))
{
?>
//上面是php代码 所以要用<? ?>
//下面是html代码 和 php代码混写
<a href=<? echo $rowdh['url'] ?> >
<? echo $rowdh['name'] ?>
</a>
<?
}
?>
//这个地方的<? }?>是匹配和最上面的php代码while{的做对!


应该明白了吧!
回复
Lyf200820 2010-08-08
上面的两位大哥 有没有看清问题 <? ?>为什么一个在大括号内 一个在大括号外。
回复
amani11 2010-08-08
完整的是

<?php

?>

这里写法php省略了,作用就是标志,中间的代码是php
回复
CunningBoy 2010-08-08
<? ?>表示這兩個符號中間的是PHP代碼,按照PHP規則來執行。
<? ?>之外的是HTML代碼
回复
Dleno 2010-08-08
[Quote=引用 6 楼 lyf200820 的回复:]

能不能把第一个大括号下面那个?>
和第二个大括号上面的 <?一起去掉 这样也可以配对了。
[/Quote]
这个只是表示那是php代码,不存在什么配对不配对的。又不是if什么的。
回复
kawae 2010-08-08
这是php的一种语法 <?php ?>这种是Phpr的默认语法
<? ?>这种是一种短标记 要用这个需要启用Php的short_open_tag指令!!
回复
q344617263 2010-08-08
php 可以和html混合使用,<? ?> 或者 <?php ?>之间的是php代码,其他的是html代码
回复
Kyshin 2010-08-08
<?  
include("conn.php");
$sqldh="select * from daohang";
$querydh=mysql_query($sqldh);
while($rowdh=mysql_fetch_array($querydh))
{
?><a href=<? echo $rowdh['url'] ?> > <? echo $rowdh['name'] ?></a> <?
}
?>

红色部分是html代码,如果去掉{下边的 <? 和}上边的 ?>,那红色部分就会以php代码执行,报语法错误,楼主先学好基础吧
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告