php计算页面执行了多长时间代码

 更新时间:2016年11月25日 15:55  点击:1927
 代码如下 复制代码
function test()        
{        
    list($a,$b)= explode(" ",microtime());        
    return (float)$a+(float)$b;        
}     

    
      

 代码如下 复制代码
$a=test();       
echo $a;       
$time    = sprintf("%.12f",(double)test()-$a); 

//方法二

 代码如下 复制代码
function ss_timing_start ($name = 'default') {
      global $ss_timing_start_times;
      $ss_timing_start_times[$name] = explode(' ', microtime());
}
function ss_timing_stop ($name = 'default') {
      global $ss_timing_stop_times;
      $ss_timing_stop_times[$name] = explode(' ', microtime());
}
function ss_timing_current ($name = 'default') {
      global $ss_timing_start_times, $ss_timing_stop_times;
      if (!isset($ss_timing_start_times[$name])) {
          return 0;
      }
      if (!isset($ss_timing_stop_times[$name])) {
          $stop_time = explode(' ', microtime());
      }
      else {
          $stop_time = $ss_timing_stop_times[$name];
      }
      // do the big numbers first so the small ones aren't lost
      $current = $stop_time[1] - $ss_timing_start_times[$name][1];
      $current += $stop_time[0] - $ss_timing_start_times[$name][0];
      return $current;
}
ss_timing_start();
/**
以下是你的页面的代码
*/
require_once    'index.php教程'; //index.php是要测试执行时间的页面
/*
页面代码结束
*/
ss_timing_stop();

//方法三

 代码如下 复制代码

class timer
{
var $starttime = 0;
var $stoptime = 0;
var $timespent = 0;

function start(){
$this->starttime = microtime();}
function stop(){
$this->stoptime = microtime();}
function spent(){
if ($this->timespent) {
return $this->timespent;
} else {
$startmicro = substr($this->starttime,0,10);
$startsecond = substr($this->starttime,11,10);
$stopmicro  = substr($this->stoptime,0,10);
$stops教程econd = substr($this->stoptime,11,10);
$start = doubleval($startmicro) + $startsecond;
$stop = doubleval($stopmicro) + $stops教程econd;
$this->timespent = $stop - $start;
return substr($this->timespent,0,8)."秒";
}
}// end function spent();
}//end class timer;
//例子
$timer = new timer;
$timer->start();
/*
你的代码放在此处
*/

$timer->stop();
echo "执行本script共".$timer->spent();

 代码如下 复制代码

function mkdirs($dir)
{
 if(!is_dir($dir)){
  if(!mkdirs(dirname($dir))){
   return false;}
  if(!mkdir($dir,0777)){
   return false;}
 }
 return true;
}
//测试方法
$img_path = realpath("../../../upfile/www.111cn.net/").'/'.date("y/m/d/");
mkdirs($img_path);

//函数了
function mkdir_r($dirname, $rights=0777){
    $dirs = explode('/', $dirname);
    $dir='';
    foreach ($dirs as $part) {
        $dir.=$part.'/';
        if (!is_dir($dir) && strlen($dir)>0)
            mkdir($dir, $rights);
    }
}

$path ="www.111cn.net/".date("y/m");
mkdir_r($path);

/*
创建目录是在文件上传中经常会碰到的事情,如果我要根据日期来生成相对就的目录并且保存文件,这样就需要这个功能了。
*/

 代码如下 复制代码

class child
{
    private $parent;
 
    function __construct($parent)
    {
        $this->parent = $parent;
    }
 
    function getnationality()
    {
        return $this->parent->nationality;
    }
}

$parent = new parent('hispanic');
$child = new child($parent);

php教程中是通过类来完成信息封装的,在php中定义类的语法是:
class class_name // 在面向对象编程类中,习惯上类的第一个字符为大写,并且必须符合变量的命名规则。
{

//函数与变量的集合

}
?>

在定义类时你可以按自已的喜好的格式进行定义,但最好能保持一种标准,这样开发起来会更有效些。

数据成员在类中使用"var"声明来定义,在给数据成员赋值之前,它们是没有类型的。一个数据成员可以是一个整数,一个数组,一个相关数组(associative array)或者是一个对象。

下面是一个类定义的实际例子:

 代码如下 复制代码
class student
{
var $str_name; //姓名
var $str_sex; //性别
var $int_id; //学号
var $int_english; //英语成绩
var $int_maths; //数学成绩
}
?>

这是一个很普通定义类的简单例子,用于显示学生的学习成绩,类名为student,student类包涵了一个学生的基本属性:姓名、性别、学号、英语成绩和数学成绩。

function我们称之为在类中被定义的函数,在函数中访问类成员变量时,你应该使用$this->var_name,其中var_name 指的是类中被声明的变量,否则对一个函数来说,它只能是局部变量。 我们先定义一个input()的函数,用来给实例中的对象赋以初值:

 代码如下 复制代码
function input ( $name, $sex, $id, $englis, $maths)
{
$this->str_name=$name;
$this->str_sex =$sex;
$this->int_id =$id;
$this->int_englis=$english;
$this->int_maths=$maths;
}

现在我们再定义一个叫“showinfo()”的函数,用于打印学生的基本情况:

 代码如下 复制代码

function showinfo() //定义showinfo()函数
{
echo (“姓名:$this->str_name

”);
echo (“性别:$this->str_sex

”);
echo (“学号:$this->int_id

”);
echo (“英语成绩:$this->int_english

”);
echo (“数学成绩:$this->int_maths

”);
}

而定义好的类则必须使用new关键词来生成对象:
$a_student=new student;
例如我们要为一个名为$wing的对象创建实例,并进行赋值,可以使用下面的代码:
$wing =new student; //用new关键词来生成对象
$wing ->input (“wing”,”男”,33,95,87);
//分别输入wing的姓名、性别、学号、英语成绩、数学成绩,其中姓名和性别是字符型变量,所以需要用双引号,其它为数值型变量则不需要。 

 代码如下 复制代码
function httpget( $url, $followredirects=true ) {
global $final_url;
$url_parsed = parse_url($url);
if ( empty($url_parsed['scheme']) ) {
    $url_parsed = parse_url('http://'.$url);
}
$final_url = $url_parsed;
 
$port = $url_parsed["port"];
if ( !$port ) {
    $port = 80;
}
$rtn['url']['port'] = $port;
 
$path = $url_parsed["path"];
if ( empty($path) ) {
    $path="/";
}
if ( !empty($url_parsed["query"]) ) {
    $path .= "?".$url_parsed["query"];
}
$rtn['url']['path'] = $path;
 
$host = $url_parsed["host"];
$foundbody = false;
 
$out = "get $path http/1.0 ";
$out .= "host: $host ";
$out .= "user-agent:      mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.8.1) gecko/20061010 firefox/2.0 ";
$out .= "connection: close ";
 
if ( !$fp = @fsockopen($host, $port, $errno, $errstr, 30) ) {
    $rtn['errornumber'] = $errno;
    $rtn['errorstring'] = $errstr;
 
}
fwrite($fp, $out);
while (!@feof($fp)) {
 
    $s = @fgets($fp, 128);
    if ( $s == " " ) {
        $foundbody = true;
        continue;
    }
    if ( $foundbody ) {
        $body .= $s;
    } else {
        if ( ($followredirects) && (stristr($s, "location:") != false) ) {
            $redirect = preg_replace("/location:/i", "", $s);
            return httpget( trim($redirect) );
        }
        $header .= $s;
    }
}
 
fclose($fp);
 
return(trim($body));

function getpath($url)
{
$path = parse_url($url,php教程_url_path);
$lastslash = strrpos($path,"/");
return substr($path,1,$lastslash-1);
}
 
echo getpath("http://www.111cn.net/blog/entry-title/?standalone=1");

//

 代码如下 复制代码
function getpathurl() { 
    $folder = explode('/', $_server['script_name']);
    $script_filename = pathinfo($_server['script_name']);
    $request = explode('/', $_server['request_uri']);
    array_shift($folder);
    array_shift($request);
    $final_request = array_diff($request, array_intersect($folder, $request));
    $final_request = array_values($final_request);
    array_clean($final_request);
    $final_request = implode('/', $final_request);
    if ($_server['query_string'] || substr($final_request, -1) == '?') {
        $final_request = substr($final_request, 0, - strlen($_server['query_string']) - 1);
    }
    return $final_request;
}


 

[!--infotagslink--]

相关文章

  • 在java中获取List集合中最大的日期时间操作

    这篇文章主要介绍了在java中获取List集合中最大的日期时间操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-15
  • 教你怎么用Java获取国家法定节假日

    这篇文章主要介绍了教你怎么用Java获取国家法定节假日,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下...2021-04-23
  • 不打开网页直接查看网站的源代码

      有一种方法,可以不打开网站而直接查看到这个网站的源代码..   这样可以有效地防止误入恶意网站...   在浏览器地址栏输入:   view-source:http://...2016-09-20
  • php 调用goolge地图代码

    <?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实现的个性菜单效果代码

    本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
  • For循环中分号隔开的3部分的执行顺序探讨

    引发这个问题思考的是一段js程序的运行结果: 复制代码 代码如下: var i = 0; function a(){ for(i=0;i<20;i++){ } } function b(){ for(i=0;i<3;i++){ a(); } return i; } var Result = b(); 这段程序的运行结果是Re...2014-05-31
  • 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实现分类动态选择及移动功能效果代码

    本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
  • JS实现自定义简单网页软键盘效果代码

    本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
  • .NET/C# 使用Stopwatch测量运行时间

    这篇文章主要介绍了.NET/C# 使用Stopwatch测量运行时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • php 取除连续空格与换行代码

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • PHP实现清除wordpress里恶意代码

    公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
  • JS实现双击屏幕滚动效果代码

    本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
  • js识别uc浏览器的代码

    其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
  • JS日期加减,日期运算代码

    一、日期减去天数等于第二个日期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
  • PHP开发微信支付的代码分享

    微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
  • JavaScript时间操作之年月日星期级联操作

    这篇文章主要介绍了JavaScript时间操作之级联日期选择操作,涉及到年、月、日、星期,感兴趣的小伙伴们可以参考一下...2016-01-18
  • C#中动态显示当前系统时间的实例方法

    想在网页中动态地显示当前系统的时间,找了好多,不过都是一些停在那里不动的。。。不过皇天不负有心人,终于让我找到了...2020-06-25
  • PHP常用的小程序代码段

    本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24