当前位置: 编程技术>php
本页文章导读:
▪深入了解php4(2)--重访过去
所以呢,可以这样理解"while"循环--它执行一系列的命令,直到一个特定的条件满足。但是,现在我们想一想,如果条件的第一个重复就满足条件了,那将会出现什么情况呢?例如,在上面的.........
▪深入了解php4(1)--回到未来
对于那些对这个个概念不熟的读者,循环是一种能让你一遍一遍重复使用同一系列PHP命令的控制结构。实际重复的次数可以由你自己决定。 第一个,也是最简单的一个循环就是所谓的"w.........
▪网站当前的在线人数
这是我的多用户统计的在线统计部分 gb_temp表: temp1 用户ID temp2 流览IP地址 temp3 online//做了个标记,因为其他功能也要使用这个表 temp4 登陆时间 $onlinetime最长离线时间分钟 db_class是我定义.........
[1]深入了解php4(2)--重访过去
来源: 互联网 发布时间: 2013-11-30
所以呢,可以这样理解"while"循环--它执行一系列的命令,直到一个特定的条件满足。但是,现在我们想一想,如果条件的第一个重复就满足条件了,那将会出现什么情况呢?例如,在上面的重复中,如果你输入2001,该循环将一次也不执行。你自己亲手试试然后你就会明白我们的意思了。
所以,如果你遇到必须至少执行一次的重复时,你可以选择使用PHP给你提供的 "do-while" 循环。首先看看下面的例子:
do
{
do this!
} while (condition)
让我们来一个快速的例子:
< ?php
$bingo = 366;
while ($bingo == 699)
{
echo "Bingo!";
break;
}
?>
在这种情况中,不管你运行这个PHP脚本多少次,你也不会得到任何输出,因为 $bingo的值不等于699。但是,如果你运行该脚本的如下版本:
< ?php
$bingo = 799;
do
{
echo "Bingo!";
break;
} while ($bingo == 699);
?>
所以,如果你遇到必须至少执行一次的重复时,你可以选择使用PHP给你提供的 "do-while" 循环。首先看看下面的例子:
do
{
do this!
} while (condition)
让我们来一个快速的例子:
< ?php
$bingo = 366;
while ($bingo == 699)
{
echo "Bingo!";
break;
}
?>
在这种情况中,不管你运行这个PHP脚本多少次,你也不会得到任何输出,因为 $bingo的值不等于699。但是,如果你运行该脚本的如下版本:
< ?php
$bingo = 799;
do
{
echo "Bingo!";
break;
} while ($bingo == 699);
?>
[2]深入了解php4(1)--回到未来
来源: 互联网 发布时间: 2013-11-30
对于那些对这个个概念不熟的读者,循环是一种能让你一遍一遍重复使用同一系列PHP命令的控制结构。实际重复的次数可以由你自己决定。
第一个,也是最简单的一个循环就是所谓的"while"循环,如下所示:
while (condition)
{
do this!
}
或者,用汉语表示
while (下雨了)
{
带上伞!
}
在这种情况中,只要条件的值是真,还记得上次怎么学的吗?---大括弧里的PHP命令将一直执行。只要条件变成假值了-例如,在上例中,太阳出来了,循环将终止,后面的命令也 就不会再执行了。
这儿有一个简单的例子来说明如何使用"while"循环:
< ?
// 如果表单还没有提交,显示初始化页面
if (!$submit)
{
?>
< html>
< head>
< /head>
< body>
< h2>另人难以置信的极妙的时间机器(time machine)< /h2>
< form action="/blog_article/tmachine.html" method="POST">
请问你打算访问哪一年?
< input type="text" name="year" size="4" maxlength="4">
< input type="submit" name="submit" value="Go">
< /form>
< /body>
< /html>
< ?
}
else
// 否则,将处理它并且产生一个新的页面
{
?>
< html>
< head>
< /head>
< body>
< ?
// 当前的年份
$current = 2001;
// 检查将来的时间并且产生相应的信息
在这个例子中的,我们首先向使用者询问他希望访问的年份-该年份被储存到变量year中,并且传送到该PHP脚本中去。
该脚本首先检查年份来确认是在过去[呵呵,我们现在好象自己在做这些事啊]然后使用一个"while"循环来从当前的年份-2001向后计算把结果存在变量current中,直到$current和$year的值相同为止。
请注意,我们通过对submit变量的使用来使同一个PHP页面既产生初始化表单又产生处理页面- 这个技术我们上次已经给你详细说明过了。
第一个,也是最简单的一个循环就是所谓的"while"循环,如下所示:
while (condition)
{
do this!
}
或者,用汉语表示
while (下雨了)
{
带上伞!
}
在这种情况中,只要条件的值是真,还记得上次怎么学的吗?---大括弧里的PHP命令将一直执行。只要条件变成假值了-例如,在上例中,太阳出来了,循环将终止,后面的命令也 就不会再执行了。
这儿有一个简单的例子来说明如何使用"while"循环:
< ?
// 如果表单还没有提交,显示初始化页面
if (!$submit)
{
?>
< html>
< head>
< /head>
< body>
< h2>另人难以置信的极妙的时间机器(time machine)< /h2>
< form action="/blog_article/tmachine.html" method="POST">
请问你打算访问哪一年?
< input type="text" name="year" size="4" maxlength="4">
< input type="submit" name="submit" value="Go">
< /form>
< /body>
< /html>
< ?
}
else
// 否则,将处理它并且产生一个新的页面
{
?>
< html>
< head>
< /head>
< body>
< ?
// 当前的年份
$current = 2001;
// 检查将来的时间并且产生相应的信息
在这个例子中的,我们首先向使用者询问他希望访问的年份-该年份被储存到变量year中,并且传送到该PHP脚本中去。
该脚本首先检查年份来确认是在过去[呵呵,我们现在好象自己在做这些事啊]然后使用一个"while"循环来从当前的年份-2001向后计算把结果存在变量current中,直到$current和$year的值相同为止。
请注意,我们通过对submit变量的使用来使同一个PHP页面既产生初始化表单又产生处理页面- 这个技术我们上次已经给你详细说明过了。
[3]网站当前的在线人数
来源: 互联网 发布时间: 2013-11-30
这是我的多用户统计的在线统计部分
gb_temp表:
temp1 用户ID
temp2 流览IP地址
temp3 online//做了个标记,因为其他功能也要使用这个表
temp4 登陆时间
$onlinetime最长离线时间分钟
db_class是我定义的一个数据库操作类。
///////////////////
//在线统计
$db = new db_class;
$db->connect();
$limit_time = time() - ($onlinetime * 60);
$online_time = time();
$db->query("delete from gb_temp where (temp4<$limit_time or temp2='$ip') and temp1='$id' and temp3='online'"); //删除离线$onlinetime分钟的用户
$db->query("insert into gb_temp (temp1,temp2,temp3,temp4) values ('$id','$ip','online','$online_time')");
$onres = $db->query("select count(*) from gb_temp where temp1='$id' and temp3='online'");
$onlineuser = $db->fetch_array($onres);
$onlineuser = $onlineuser[0];
gb_temp表:
temp1 用户ID
temp2 流览IP地址
temp3 online//做了个标记,因为其他功能也要使用这个表
temp4 登陆时间
$onlinetime最长离线时间分钟
db_class是我定义的一个数据库操作类。
///////////////////
//在线统计
$db = new db_class;
$db->connect();
$limit_time = time() - ($onlinetime * 60);
$online_time = time();
$db->query("delete from gb_temp where (temp4<$limit_time or temp2='$ip') and temp1='$id' and temp3='online'"); //删除离线$onlinetime分钟的用户
$db->query("insert into gb_temp (temp1,temp2,temp3,temp4) values ('$id','$ip','online','$online_time')");
$onres = $db->query("select count(*) from gb_temp where temp1='$id' and temp3='online'");
$onlineuser = $db->fetch_array($onres);
$onlineuser = $onlineuser[0];
最新技术文章: