PHP生成HTML纯静态网页程序代码
关于用PHP如何实现全站静态化处理的内容,这样让php生成HTML纯静态网页,让访问速度更快。
代码如下 | 复制代码 |
//在开始处加入 ob_start(); //以下是代码 //写入文件 |
这只是最基本的方法,还不是很实用,因为网站是要更新的,要定期重新生成HTML
下面是我用的方法:
代码如下 | 复制代码 |
if(file_exists(“demo.html”)) //文件修改时间和现在时间相差半小时一下的话,直接导向html文件,否则重新生成html //页面的详细内容 //写入文件 //重新导向 |
上面的方法在大批生成时可能不是最好的办法了
代码如下 | 复制代码 |
<?php $iid=$datauser[id];
// 使用写入模式打开$filename if (is_writable($filename)) { // 将$html写入到我们打开的文件中。 print "文件 $filename 更新成功!nr"; fclose($handle); } else {
<div style="font-size=12px"><? echo $datastat." "?></div><br><br> |
说明:原动态地址为 moban.php?id=1 ,生成后地址为 html/200808/sell_1.html 。page.php为分页程序,本博客中有发布。
页面使用方式,将本代码保存为make.php,使用方法为浏览器访问 make.php?t=数量&pg=页面;例如 make.php?t=300&pg=2,即每次生成300条数据,从数据列表第2页开始生成,即跳过前面300条。如果不加任何参数,直接访问make.php,则默认每次生成200条,从第一页开始生成。
举例 URL : http://www.111cn.net/Test/Test.php
代码如下 | 复制代码 |
$_SERVER['SERVER_NAME']: www.111cn.net $_SERVER['SERVER_PORT'] : 80 $_SERVER['REQUEST_URI'] : /Test/Test.php |
那我们把上面几句结合起来就可以实现了
URL完整路径为:
代码如下 | 复制代码 |
“http://”.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] |
如果你是开了端口号,我们可以使用$_SERVER['SERVER_PORT']就好了,上面的代码修改一下即可。
代码如下 | 复制代码 |
“http://”.$_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].$_SERVER['REQUEST_URI'] |
大家要注意一点。
$_SERVER['PHP_SELFT']与$_SERVER['SCRIPT_NAME']和$_SERVER['REQUEST_URI']和$_SERVER['QUERY_STRING']的区别:
$_SERVER['PHP_SELF']会返回/phptour/test7.php/a=b,会返回文件名/后面的内容
$_SERVER['SCRIPT_NAME']只会返回/phptour/test.php,不会返回文件名后面的/后面的内容
http://localhost:60/phptour/test/test7.php/a=b
$_SERVER['PHP_SELF']将得到:/phptour/test/test7.php/a=b
$_SERVER['SCRIPT_NAME']将得到:/phptour/test/test7.php
$_SERVER['REQUEST_URI']将得到:/phptour/test/test7.php/a=b
$_SERVER['QUERY_STRING']将得到:''
手机(中国移动手机号码):
代码如下 | 复制代码 |
regexp="^(((d{3}))|(d{3}-))?13[456789]d{8}|15[89]d{8}" |
验证是否为手机号码的正则
代码如下 | 复制代码 |
:"^(13[0-9]|15[0|3|6|7|8|9]|18[6|8|9])d{8}$" |
php代码
代码如下 | 复制代码 |
<?php if (preg_match($regex, $mobilePhone) == 0) { else { |
例1
代码如下 | 复制代码 |
function my_array_unique($array2D){ |
下面推荐一种非常不错的去除二维数组重复值函数
代码如下 | 复制代码 |
function a_array_unique($array)//写的比较好 |
使用方法也是当然简单的如
代码如下 | 复制代码 |
$array2D = array(‘first’=>array(‘title’=>’1111′,’date’=>’2222′),’second’=>array(‘title’=>’1111′,’date’=>’2222′),’third’=>array(‘title’=>’2222′,’date’=>’3333′)); |
调用方法
代码如下 | 复制代码 |
$as = a_array_unique($array2D); |
即可了。
在php中对二维数组排序我们可以直接使用array_multisort()函数即可实现,同时我也收藏了一些自定对二维数组排序代码大家可参考。先来看array_multisort()函数
代码如下 | 复制代码 |
<?php |
本例中在排序后,第一个数组将变成 "10",100,100,11,"a"(被当作字符串以升序排列)。第二个数组将包含 1, 3, "2", 2, 1(被当作数字以降序排列)。
代码如下 | 复制代码 |
array(2) { |
上面的用现成的函数感觉不是很方便,下面我来推荐一个用户自定义的函数
代码如下 | 复制代码 |
function array_sort($arr,$keys,$type='asc'){ $keysvalue = $new_array = array(); foreach ($arr as $k=>$v){ $keysvalue[$k] = $v[$keys]; } if($type == 'asc'){ asort($keysvalue); }else{ arsort($keysvalue); } reset($keysvalue); foreach ($keysvalue as $k=>$v){ $new_array[$k] = $arr[$k]; } return $new_array; } |
测试(它可以对二维数组按照指定的键值进行排序,也可以指定升序或降序排序法(默认为升序),
用法示例:
代码如下 | 复制代码 |
$array = array( $ShoppingList = array_sort($array,'price'); |
冒泡法
代码如下 | 复制代码 |
function arraysort($data, $order = 'asc') { return $data; $data = array (7, 5, 3, 8, 9, 1, 5, 3, 1, 24, 3, 87, 0, 33, 1, 12, 34, 54, 66, 32 ); |
相关文章
- 有一种方法,可以不打开网站而直接查看到这个网站的源代码.. 这样可以有效地防止误入恶意网站... 在浏览器地址栏输入: view-source:http://...2016-09-20
- <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
- 本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
- 本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
- 本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
- php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
- php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p> </p> <p> </p> <form name="form1...2016-11-25
- 公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
- 本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
- 其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
- 一、日期减去天数等于第二个日期function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(a)alert(a.getFullYear() + "年" + (a.getMonth() +...2015-11-08
- 微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
- 这篇文章主要介绍了Java生成随机姓名、性别和年龄的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-10-01
- 本文介绍两种使用 php 生成二维码的方法。 (1)利用google生成二维码的开放接口,代码如下: /** * google api 二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】 * @param strin...2015-10-21
- 本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
- 本文介绍了如何延迟javascript代码的加载,加快网页的访问速度。 当一个网站有很多js代码要加载,js代码放置的位置在一定程度上将会影像网页的加载速度,为了让我们的网页加载速度更快,本文总结了一下几个注意点...2013-10-13
- 这篇文章主要介绍了C#生成随机数功能,涉及C#数学运算与字符串操作相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06
- 下面小编就为大家带来一篇jQuery为动态生成的select元素添加事件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-09-01
- 关于生成唯一数字ID的问题,是不是需要使用rand生成一个随机数,然后去数据库查询是否有这个数呢?感觉这样的话有点费时间,有没有其他方法呢?当然不是,其实有两种方法可以解决。 1. 如果你只用php而不用数据库的话,那时间戳+随...2015-11-24