php 定义php代码运行时间
php 定义php代码运行时间
定义和用法
time_sleep_until() 函数延迟代码执行直到指定的时间。
语法
time_sleep_until(timestamp)
参数 描述
timestamp 必需。脚本唤醒时的时间戳。
说明
使脚本暂停执行,直到指定的 timestamp。
返回值
如果成功则返回 TRUE,失败则返回 FALSE。
错误/异常
如果指定的时间戳位于过去,则该函数将生成一个 E_WARNING。
提示和注释
注释:所有信号都将在脚本唤醒后递送。
注释:本函数未在 Windows 平台下实现。
time_sleep_until
(PHP 5 >= 5.1.0)
time_sleep_until — Make the script sleep until the specified time
设置脚本延迟执行的时间
<?php
if (!function_exists('time_sleep_until')) {
function time_sleep_until($future) {
if ($future < time()) {
trigger_error("Time in past", E_USER_WARNING);
return false;
}
sleep($future - time());
return true;
}
}
?>
<?php
//Implementation for < 5.1 or Windows users
if (!function_exists('time_sleep_until')) {
function time_sleep_until($future) {
if ($future < time()) {
trigger_error("Time in past", E_USER_WARNING);
return false;
}
usleep(($future - microtime(1))*1000000);
return true;
}
}
?>
<?php
//returns false and generates a warning
var_dump(time_sleep_until(time()-1));
// may only work on faster computers, will sleep up to 0.2 seconds
var_dump(time_sleep_until(time()+0.2));
?>
<?php
// +----------------------------------------------------------------------+
// | PHP Version 4 |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2004 The PHP Group |
// +----------------------------------------------------------------------+
// | This source file is subject to version 3.0 of the PHP license, |
// | that is bundled with this package in the file LICENSE, and is |
// | available at through the world-wide-web at |
// | http://www.php.net/license/3_0.txt. |
// | If you did not receive a copy of the PHP license and are unable to |
// | obtain it through the world-wide-web, please send a note to |
// | license@php.net so we can mail you a copy immediately. |
// +----------------------------------------------------------------------+
// | Authors: Arpad Ray <arpad@php.net> |
// +----------------------------------------------------------------------+
//
// $Id: time_sleep_until.php,v 1.2 2005/12/07 21:08:57 aidan Exp $
/**
* Replace time_sleep_until()
*
* @category PHP
* @package PHP_Compat
* @link http://php.net/time_sleep_until
* @author Arpad Ray <arpad@php.net>
* @version $Revision: 1.2 $
* @since PHP 5.1.0
* @require PHP 4.0.1 (trigger_error)
*/
if (!function_exists('time_sleep_until')) {
function time_sleep_until($timestamp)
{
list($usec, $sec) = explode(' ', microtime());
$now = $sec + $usec;
if ($timestamp <= $now) {
user_error('Specified timestamp is in the past', E_USER_WARNING);
return false;
}
$diff = $timestamp - $now;
usleep($diff * 1000000);
return true;
}
}
?>
php+mysql第一条数据无法显示的原因和解决方法
while($row=@mysql_fetch_row($result))”读取数据之前,已经使用“if(@mysql_fetch_row($result))”对有无符合条件的数据进行了一次判断,使指针指向了第二条数据。
解决方法:判断有无符合条件的数据时,使用“if(@mysql_num_rows($result))”,代码如下:
<?php
if(@mysql_num_rows($result)){
while($row=@mysql_fetch_row($result)){
print_r($row);
}
mysql_free_result($result);
}else{
echo "没有符合条件的数据";
}
?>
php 简单简洁分页类
<?php
/**
*-------------------------翻页类----------------------*
*/
class PageClass
{
private $myde_count; //总记录数
var $myde_size; //每页记录数
private $myde_page; //当前页
private $myde_page_count; //总页数
private $page_url; //页面url
private $page_i; //起始页
private $page_ub; //结束页
var $page_limit;
function __construct($myde_count=0, $myde_size=1, $myde_page=1,$page_url)//构造函数
{
$this -> myde_count = $this -> numeric($myde_count);
$this -> myde_size = $this -> numeric($myde_size);
$this -> myde_page = $this -> numeric($myde_page);
$this -> page_limit = ($this -> myde_page * $this -> myde_size) - $this -> myde_size;
$this -> page_url = $page_url;
if($this -> myde_page < 1) $this -> myde_page =1;
if($this -> myde_count < 0) $this -> myde_page =0;
$this -> myde_page_count = ceil($this -> myde_count/$this -> myde_size);
if($this -> myde_page_count < 1) $this -> myde_page_count = 1;
if($this -> myde_page > $this -> myde_page_count) $this -> myde_page = $this -> myde_page_count;
$this -> page_i = $this -> myde_page - 2;
$this -> page_ub = $this -> myde_page + 2;
if($this -> page_i < 1){
$this -> page_ub = $this -> page_ub + (1 - $this -> page_i);
$this -> page_i = 1;
}
if($this -> page_ub > $this -> myde_page_count){
$this -> page_i = $this -> page_i - ($this -> page_ub - $this -> myde_page_count);
$this -> page_ub = $this -> myde_page_count;
if($this -> page_i < 1) $this -> page_i = 1;
}
}
private function numeric($id) //判断是否为数字
{
if (strlen($id)){
if (!ereg("^[0-9]+$",$id)){
$id = 1;
}else{
$id = substr($id,0,11);
}
}else{
$id = 1;
}
return $id;
}
private function page_replace($page) //地址替换
{
return str_replace("{page}", $page, $this -> page_url);
}
private function myde_home() //首页
{
if($this -> myde_page != 1){
return " <li class="page_a"><a href="".$this -> page_replace(1)."" title="首页" >首页</a></li>n";
}else{
return " <li>首页</li>n";
}
}
private function myde_prev() //上一页
{
if($this -> myde_page != 1){
return " <li class="page_a"><a href="".$this -> page_replace($this->myde_page-1) ."" title="上一页" >上一页</a></li>n";
}else{
return " <li>上一页</li>n";
}
}
private function myde_next() //下一页
{
if($this -> myde_page != $this -> myde_page_count){
return " <li class="page_a"><a href="".$this -> page_replace($this->myde_page+1) ."" title="下一页" >下一页</a></li>n";
}else{
return " <li>下一页</li>n";
}
}
private function myde_last() //尾页
{
if($this -> myde_page != $this -> myde_page_count){
return " <li class="page_a"><a href="".$this -> page_replace($this -> myde_page_count)."" title="尾页" >尾页</a></li>n";
}else{
return " <li>尾页</li>n";
}
}
function myde_write($id='page') //输出
{
$str = "<div id="".$id."" class="pages">n <ul>n ";
$str .= " <li>总记录:<span>".$this -> myde_count."</span></li>n";
$str .= " <li><span>".$this -> myde_page."</span>/<span>".$this -> myde_page_count."</span></li>n";
$str .= $this -> myde_home();
$str .= $this -> myde_prev();
for($page_for_i = $this -> page_i;$page_for_i <= $this -> page_ub; $page_for_i++){
if($this -> myde_page == $page_for_i){
$str .= " <li class="on">".$page_for_i."</li>n";
}
else{
$str .= " <li class="page_a"><a href="".$this -> page_replace($page_for_i)."" title="第".$page_for_i."页">";
$str .= $page_for_i . "</a></li>n";
}
}
$str .= $this -> myde_next();
$str .= $this -> myde_last();
$str .= " <li class="pages_input"><input type="text" value="".$this -> myde_page.""";
$str .= " onkeydown="javascript: if(event.keyCode==13){ location='";
$str .= $this -> page_replace("'+this.value+'")."';return false;}"";
$str .= " title="输入您想要到达的页码" /></li>n";
$str .= " </ul>n <div class="page_clear"></div>n</div>";
return $str;
}
}
/*-------------------------实例--------------------------------*
$page = new PageClass(1000,5,$_GET['page'],'?page={page}');//用于动态
$page = new PageClass(1000,5,$_GET['page'],'list-{page}.html');//用于静态或者伪静态
$page -> myde_write();//显示
*/
?>
php 生成静态文件实例类函数
//-----------------------------生成静态的类-------------------------------
class Makehtml{
public $MbUrl,$OutUrl,$AllHtml,$SouChar,$ObjChar; //变量
public $row; //游标
public $Shuzusou,$Shuzuobj; //替换的字符串数组
//-----------------------初始化-------------------------
function __construct(){ //初始化
$this->MbUrl="";
$this->OutUrl="";
$this->AllHtml="";
$this->Sql="";
$this->SouChar="";
$this->ObjChar="";
}
//-----------------------------自动按字段替换---------------------------
function AutoReplace(){
//------------------自动获取要替换的字符串-------------------
$tlen=count($row);
$shuzu1=array();
$shuzu2=array();
if($row){
$i=0;
foreach($row as $key => $value){
$shuzu2="<=$".$key."$>";
$shuzu1=$value;
$i++;
}
$this->Replacehtml(shuzu2,shuzu1);
}
//------------------自动获取要替换的字符串-------------------
}
//-----------------------------自动按字段替换完成------------------------
//-----------------------------批量替换数组--------------------------
function Replacehtml($Shuzusou,$Shuzuobj){ //批量替换数组
if(count($Shuzusou)!=count($Shuzuobj)){
exit("替换数组不匹配");
}
if($this->AllHtml==""){
exit("没有要替换的内容");
}
for($i=0;$i<count($Shuzusou);$i++){
$this->AllHtml=str_replace($Shuzusou[$i],$Shuzuobj[$i],$this->AllHtml);
//print("<br>".$Shuzusou(i)."=".$Shuzuobj(i)."<br>")
}
}
//-----------------------------批量替换数组完成--------------------------
//-----------------------------读取文件---------------------------------
function Readfile(){
$file=fopen($this->MbUrl,"r");
$fsize=filesize($this->MbUrl);
$this->AllHtml=fread($file,$fsize);
fclose($file);
}
//-----------------------------读取文件完成------------------------------
//-----------------------------保存文件---------------------------------
function SaveFile(){
$file=fopen($this->OutUrl,"w");
fwrite($file,$this->AllHtml);
fclose($file);
}
//-----------------------------保存文件完成------------------------------
}
实例
$MyMake->MbUrl="News_Show.shtml";
$MyMake->Readfile();
$THTml=$MyMake->AllHtml;
$shuzu1=array();
$shuzu2=array();
$shuzu1[0]="<=$keybord$>";
$shuzu1[1]="<=$description$>";
$shuzu1[2]="<=$title$>";
$shuzu1[3]="<=$Title1$>";
$shuzu1[4]="<$=Bid$>";
$shuzu1[5]="<$=Id$>";
$shuzu1[6]="<=$Contentb$>";
$shuzu1[7]="<$=BigId$>";
$shuzu1[8]="<=$Date$>";
$shuzu1[9]="<=$City$>";
$shuzu1[10]="<=$SmallId$>";
$shuzu1[11]="<=$CityId$>";
$shuzu1[12]="width="100%"";
$MyMake->OutUrl="News_show_1.shtml";
$shuzu2[0]="数组0";
$shuzu2[1]="数组1";
$shuzu2[2]="数组2";
$shuzu2[3]="数组3";
$shuzu2[4]="数组4";
$shuzu2[5]="数组5";
$shuzu2[6]="数组6";
$shuzu2[7]="数组7";
$shuzu2[8]="数组8";
$shuzu2[9]="数组9";
$shuzu2[10]="数组10";
$shuzu2[11]="数组11";
$shuzu2[12]="width="95%"";
$MyMake->Replacehtml($shuzu1,$shuzu2);
$MyMake->SaveFile();
网页模版生成类
<?php
/*
网页模版生成类
用途:主要用于静态资源面页的生成..本类也适用于其它系统的静态页面的生成
调用实例:
$tpl = new TemplateEngine();
$tpl->opentemplate("e:/t.htm");
$tpl->startelement = "<!--资源标题标识-开始-->";
$tpl->endelement = "<!--资源标题标识-结束-->";
$tpl->value = "这是资源标题的替换内容";
$tpl->replacetemplate();
$tpl->save();
*/
本帖隐藏的内容需要回复才可以浏览
class TemplateEngine
{
public $filepath, $startelement, $endelement, $value;
private $template, $fso ,$fle, $regex, $filestate;
function __construct()
{
$this->filestate = false;
$this->filepath = '';
$this->template = '';
$this->startelement = '';
$this->endelement = '';
}
private function filterstr($str)
{
if($str=='' || is_null($str))return '';
// $str = str_replace('','\',$str);
$str = str_replace('/','/',$str);
$str = str_replace('(','(',$str);
$str = str_replace(')',')',$str);
$str = str_replace('*','*',$str);
$str = str_replace('?','?',$str);
$str = str_replace('{','}',$str);
$str = str_replace('}','{',$str);
$str = str_replace('.','.',$str);
$str = str_replace('+','+',$str);
$str = str_replace('[','[',$str);
$str = str_replace(']',']',$str);
return $str;
}
//设置模板文件路径
public function opentemplate($mfilepath)
{
global $flib;
if(!($this->template=@file_get_contents($mfilepath))){$flib->alert('指定的模板文件不存在!','BACK',0);exit();}
$this->filestate = true;
$this->filepath = $mfilepath;
}
//判断标识是否存在
public function iselement()
{
if(!$this->filestate || $this->template=='' || $this->startelement=='' || $this->endelement=='')return;
$strpatrn = "/".$this->filterstr($this->startelement)."[Ss]*?".$this->filterstr($this->endelement)."/";
return preg_match($strpatrn,$this->template)?1:0;
}
// 规换模版元素,元素标签一般格式为:"<!-元素标签-开始--><!--元素标签-结束-->",你当然也可以自义
// 元素标签不区分大小写
public function replacetemplate()
{
if(!$this->filestate || $this->template=='' || $this->startelement=='' || $this->endelement=='')return;
$strpatrn = "/".$this->filterstr($this->startelement)."[Ss]*?".$this->filterstr($this->endelement)."/";
$this->template = preg_replace($strpatrn,$this->startelement.$this->value.$this->endelement,$this->template);
}
//保存新的模板内容
public function save()
{
if(!$this->filestate)return;
@file_put_contents($this->filepath,$this->template);
}
//另存模板内容
public function saveas($mfilepath)
{
if(!$this->filestate)return;
@file_put_contents($mfilepath,$this->template);
}
}
?>
相关文章
- 这篇文章主要介绍了在java中获取List集合中最大的日期时间操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-15
- 这篇文章主要介绍了教你怎么用Java获取国家法定节假日,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下...2021-04-23
- 有一种方法,可以不打开网站而直接查看到这个网站的源代码.. 这样可以有效地防止误入恶意网站... 在浏览器地址栏输入: 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
- 本文为那些对学习 Windows PowerShell 命令行和脚本编写环境感兴趣的系统管理员提供了资源。也请告诉我们本网站如何才能对您更有用处。...2020-06-30
mysql中获取一天、一周、一月时间数据的各种sql语句写法
创建表:复制代码 代码如下:create table if not exists t( id int, addTime datetime default '0000-00-00 00:00:00′)添加两条初始数据:insert t values(1, '2012-07-12 21:00:00′);insert t values(2, '2012-07...2014-05-31- 本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
- 本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
- 这篇文章主要介绍了.NET/C# 使用Stopwatch测量运行时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 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
- 这篇文章主要介绍了C#隐式运行CMD命令(隐藏命令窗口),本文实现在winform窗口中运行CMD命令,需要的朋友可以参考下...2020-06-25
- 微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
- 想在网页中动态地显示当前系统的时间,找了好多,不过都是一些停在那里不动的。。。不过皇天不负有心人,终于让我找到了...2020-06-25
- 本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24