![[php]写循环的switch!,第1张 [php]写循环的switch!,第1张](/aiimages/%5Bphp%5D%E5%86%99%E5%BE%AA%E7%8E%AF%E7%9A%84switch%EF%BC%81.png)
-------------------------------------------------------
你的问题描述有问题。
回答者“tbsoo_com ”的计算这里$i-1是错误的,应该加上括号!
计算分页应该提供的参数是每页显示多少记录,总记录数。
-----------------------------------------------
显示更多就是显示3组,图片个数变成15个,默认是从第一张开始。类推;
显示更少图片就是1组,图片个数是5个,默认也是从第一张开始。类推;
//这里应该是“显示更少图片就是10组,图片罩运樱个数是5个,默认也是从第一张开始。类推;”,应该是10组吧,是否是写错了。
----------------------------------------
代码我写了下:
<?php
$totalnum = 50//总记录数是50个
//计算每页显示多少记录数
switch(trim($_GET['type'])){
case 'more': $perpage = 15break //更多,
case 'less': $perpage = 5 break//更少,
default: $perpage = 10$_GET['type'] = '' break//默认,
}
$page = max(intval($_GET['page']),1)//当前的页码,参数传递为page
$_GET['page'] = ''
$startnum = ($page - 1)*$perpage//开始的记录数
$totalpage = ceil($totalnum/$perpage)//总页数
if($page >$totalpage) exit('超过最大页面,请返回第一页')//超过最大页码
//--------分页HTML代码生成----------
$fenyeurl = '?'.http_build_query($_GET)//分页网址
$pre_link = '<a href="'.$fenyeurl.($page >1 ? ($page-1):$totalpage).'">上一页</a>'
$next_link = '<a href="'.$fenyeurl.($page >$totalpage ? 1:($page+1)).'">下一页</a>'
//--------上一组下一组-------------
$less_link = '<a href="?type=less">更少</a>'
$more_link = '<a href="?type=more">更多</a>'
?>
-----------------------------------------------------------
修改了个地方,计物丛算分页URL的这里是用 http_build_query
分分,悄竖快快~~~
<?phpswitch ($score=43)// 这里不能放表达式的
{
case "$score>=90&&$score<=100":// 这里好像也不能这样
echo"优秀<br>"
break
case "$score>=80&&$score<90": // 这里好像也不能这样
echo"良好<br>"
break
case "$score>=70&&$score<80":// 这里好像也不能这样
echo"中等<br>"
break
case "$score>=60&&$score<70": // 这里好像也不能这样
echo"及格<br>"
break
case "$score>=0&&$score<60": // 这里好像敏饥也不能这样
echo"不及格<br>"
break
default:
echo"成绩输入错误<br>"
break
}
// 我觉得判敬拿蠢断成绩的,最好用 if 语句,因为 switch 是要具体捕捉某一个值的,不是很适用于大范围的判断
// 还有的是,从输入框输入的是一个字符串,虽然你输入的是数字,但它也会当作字符串来处理
// 有说得不对的,请见谅,,,,
?>亮陪
<?PHP$num = rand(1,5)
echo '$num = '.$num.'<或迅返br />'//显示随机数$num的值
$start = microtime(true)//获取执行if之前的时间
if($num == 1)
{}else if($num == 2)
{}else if($num == 3)
{}else if($num == 4)
{}else{}
$end = microtime(true)//获取执行if之后的时间
echo 'if: '.($end-$start).'<br />'//显示执行if所用时间
$start = microtime(true)//获取执行switch之前的时间
switch($num)
{
case 1:break
case 2:break
case 3:break
case 4:break
case 5:break
}
$end = microtime(true)//获取执行switch之后的时间
echo 'switch: '.($end-$start).'<br />'//显示执衫饥行switch所用时间昌祥
?>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)