php计算时间间隔实现程序代码

 更新时间:2016年11月25日 17:31  点击:2207
在文章里面我说了很多关于php计算时间间隔实现程序代码的实现方法原理以及分析如何来做这个功能,有需用的同学可以仔细看看哦。

下面实例是告诉我们在论坛有看到关于多少秒钟前发了帖子等这些功能,

分析

实际时间 PHP

1秒 2“秒”

______________________

30秒==60

5分钟==60*10 //这里我觉得应该是五分钟,而不是一分钟,个人觉得 一分钟的话应该是 60*2

10分钟==60*20

30分钟==60*60

1小时==60*60*2

2.5小时==60*60*5


原理

用当前时间time(),减去你信息录入时的新增时间,(注意是时间戳),然后得出的差数,就是秒数,再根据自己的需要来转换啊。例如你想转换成分钟,就除以60。

实例

 代码如下 复制代码

<?php
/**
 * 时间差计算
 *
 * @param Timestamp $time
 * @return String Time Elapsed
 * @author Shelley Shyan
 * @copyright http://www.111cn.net (Professional PHP Architecture)
 */
function time2Units ($time)
{
   $year   = floor($time / 60 / 60 / 24 / 365);
   $time  -= $year * 60 * 60 * 24 * 365;
   $month  = floor($time / 60 / 60 / 24 / 30);
   $time  -= $month * 60 * 60 * 24 * 30;
   $week   = floor($time / 60 / 60 / 24 / 7);
   $time  -= $week * 60 * 60 * 24 * 7;
   $day    = floor($time / 60 / 60 / 24);
   $time  -= $day * 60 * 60 * 24;
   $hour   = floor($time / 60 / 60);
   $time  -= $hour * 60 * 60;
   $minute = floor($time / 60);
   $time  -= $minute * 60;
   $second = $time;
   $elapse = '';

   $unitArr = array('年'  =>'year', '个月'=>'month',  '周'=>'week', '天'=>'day',
                    '小时'=>'hour', '分钟'=>'minute', '秒'=>'second'
                    );

   foreach ( $unitArr as $cn => $u )
   {
       if ( $$u > 0 )
       {
           $elapse = $$u . $cn;
           break;
       }
   }

   return $elapse;
}

$past = 2052345678; // Some timestamp in the past
$now  = time();     // Current timestamp
$diff = $now - $past;

echo '发表于' . time2Units($diff) . '前';
?>

这是一个刚入门的同学写的

 代码如下 复制代码

<?php
    $regist1 = "05/12/2006";
    $regist2 = "10/05/2007";

    list($month1,$day1,$year1) = explode("/",$regist1);
    list($month2,$day2,$year2) = explode("/",$regist2);

    $regist1 = mktime(0,0,0,$month1,$day1,$year1);
    $regist2 = mktime(0,0,0,$month2,$day2,$year2);

    $time_difference = $regist2-$regist1;

    echo ("时间差:");
    echo date("Y",$time_difference) - 1970;
    echo ("年");
    echo date("m",$time_difference) - 1;
    echo ("个月");
    echo date("d",$time_difference) - 1;
    echo ("天");
?>


好了喜欢就自己选择用吧。

本文章介绍解决XMLHttpRequest(Ajax)不能设置自定义的Referer办法的,我们主要是利用使用服务器作为代理.来处理,是基于curl的方法哦。

在PHP中, 使用我最喜欢的最强大的CURL,嘿嘿

 下面是在万网查询域名的实例代码

<?php

$dn = $_GET['dn']; // 域名, 不包括www
$ex = $_GET['ex']; // 顶级域名, 如 .com, .cn, 包括最前面的.
// 查询域名是否已经注册

 代码如下 复制代码


$url = 'http://pandavip.www.net.cn/check/check_ac1.cgi';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true); // POST
curl_setopt($ch, CURLOPT_POSTFIELDS, 'domain='.$dn.$ex);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20100101 Firefox/8.0');
curl_setopt($ch, CURLOPT_COOKIE, '__utma=1.1486902564.1322109246.1322109246.1322109246.1; __utmz=1.1322109246.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); AdSource=GOOGLE%u641C%u7D22; AdWordID=gg96011009070005; __utmc=1');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'X-Requested-With' => 'XMLHttpRequest', // 设置为Ajax方式
    'Referer' => 'http://pandavip.www.net.cn/cgi-bin/Check.cgi?queryType=0&domain1='.$dn.'&image.x=0&image.y=0&domain='.$dn.'&big5=n&sign=2&url=www.net.cn&'.trim($ex, '.').'=yes' // 冒名顶替, 嘿嘿
));
curl_exec($ch); // 将查询结果返回前端, 用JS处理

本文章不讲代码只讲关于php留言板的设计构思与中间用到那些技术处理,有需要的朋友可以参考一下。

-设计一个程序流程
       1.功能需要
       2.页面设计
       3.数据库设计
       4.代码设计
       5.调试发布
   -表单
       1.form></form>
       2.method:表单数据传输到服务器的方法
          post(表示在Http请求中嵌入表单数据)
          get   (表示将表单数据附加到请求该页的URL)  默认方法
          区别:
          a.Get传输数据量小,这主要是受URL长度限制;而Post可以传输大量数据。
          b.Get安全性比较低,但执行效率比Post好。      
          接收参数:
          POST方式:$_POST['name']
          GET方式:$_GET['name']
          注意:$_POST与$_GET必须为大写;
                     php5.0以上版本不加引号会报notice级别错误,要养成良好书写习惯,规范化。当然关闭display_error就另当别论。
         充电
          $_POST:它是由HTTP POST方法传递的变量组成的数组
          $_GET: 它是由HTTP GET方法传递的变量组成的数组
          $_COOKIE:它是由HTTP Cookies传递的变量组成的数组
          $_SESSION:它是包含当前脚本中会话变量的数组
          建议
          1.GET安全性较POST差,包含机密信息的话建议使用POST
          2.分页时使用GET
       3.常用控件
           a.单行文本框   <input type=text>
               多行文本框  <textarea></textarea>
           b.密码框   <input type=password>
           c.多选框   <input type=checkbox checked> (checked属性表示选中状态)
           d.单选框   <input type=radio checked> (checked同上)
           e.下拉菜单
               <select>
               <option selected></option>     //selected指定该选项的初始状态为选中
               </select>
            f.提交按钮 <input type=submit>
              重置按钮  <input type=reset>
        4.日期/时间函数
            php:date,time;
            mysql:now
   -javascript验证
       onsubmit:当提交按钮点击时触动,如果内容为"return function_name();"函数返回FALSE,则不提交表单。
   -初识COOKIE
        setcookie(name,value,time);
        注意:php的cookie必须刷新一次才能生效。

有时我们会有专业的工具去搜集网站中网页上有email地址的内容,把内容中的邮箱地址给提取出来,下面我们来看个实例,有需要的参考一下。

[PHP]代码

 代码如下 复制代码

function extract_emails($str){ 

    // This regular expression extracts all emails from a string: 

    $regexp = '/([a-z0-9_.-])+@(([a-z0-9-])+.)+([a-z0-9]{2,4})+/i'; 

    preg_match_all($regexp, $str, $m); 

 

    return isset($m[0]) ? $m[0] : array(); 

 

$test_string = 'This is a test string... 

 

        test1@example.org 

 

        Test different formats: 

        test2@example.org; 

        <a href="test3@example.org">foobar</a> 

        <test4@example.org> 

 

        strange formats: 

        test5@example.org 

        test6[at]example.org 

        test7@example.net.org.com 

        test8@ example.org 

        test9@!foo!.org 

 

        foobar '; 

 print_r(extract_emails($test_string));

在开发中这个分页功能肯定是少不了的,今天我们分享一个非常实用且简单的php分页功能的实现代码,有需要的朋友可以参考一下。
 代码如下 复制代码

/**
* 分页函数
*
* @param int $count 条目总数
* @param int $perlogs 每页显示条数目
* @param int $page 当前页码
* @param string $url 页码的地址
*/
function pagination($count,$perlogs,$page,$url,$anchor=''){
$pnums = @ceil($count / $perlogs);
$re = '';
$urlHome = preg_replace("|[?&/][^./?&=]*page[=/-]|","",$url);
for ($i = $page-5;$i <= $page+5 && $i <= $pnums; $i++){
if ($i > 0){
if ($i == $page){
$re .= " <span>$i</span> ";
} elseif($i == 1) {
$re .= " <a href="$urlHome$anchor">$i</a> ";
} else {
$re .= " <a href="$url$i$anchor">$i</a> ";
}
}
}
if ($page > 6) $re = "<a href="{$urlHome}$anchor" title="首页">«</a><em>...</em>$re";
if ($page + 5 < $pnums) $re .= "<em>...</em> <a href="$url$pnums$anchor" title="尾页">»</a>";
if ($pnums <= 1) $re = '';
return $re;
}
[!--infotagslink--]

相关文章

  • C#开发Windows窗体应用程序的简单操作步骤

    这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
  • 在java中获取List集合中最大的日期时间操作

    这篇文章主要介绍了在java中获取List集合中最大的日期时间操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-15
  • C++调用C#的DLL程序实现方法

    本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
  • 教你怎么用Java获取国家法定节假日

    这篇文章主要介绍了教你怎么用Java获取国家法定节假日,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下...2021-04-23
  • C#使用Process类调用外部exe程序

    本文通过两个示例讲解了一下Process类调用外部应用程序的基本用法,并简单讲解了StartInfo属性,有需要的朋友可以参考一下。...2020-06-25
  • 微信小程序 页面传值详解

    这篇文章主要介绍了微信小程序 页面传值详解的相关资料,需要的朋友可以参考下...2017-03-13
  • 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
  • python 计算方位角实例(根据两点的坐标计算)

    今天小编就为大家分享一篇python 计算方位角实例(根据两点的坐标计算),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-27
  • .NET/C# 使用Stopwatch测量运行时间

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

    大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
  • uniapp微信小程序:key失效的解决方法

    这篇文章主要介绍了uniapp微信小程序:key失效的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
  • PHP常用的小程序代码段

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

    时常会写用c#一些程序,但如何将他们和photoshop一样的大型软件打成一个压缩包,以便于发布....2020-06-25
  • 常用的日期时间正则表达式

    常用的日期时间正则表达式 下面收藏了大量的日期时间正则匹配函数,包括分钟,时间与秒都能达到。 正则表达式 (?n:^(?=d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(...2016-11-25
  • 非常全面的php日期时间运算汇总

    实例讲解之前,先来介绍几个核心函数: mktime 函数 mktime() 函数返回一个日期的 Unix 时间戳。 参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。 参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。...2015-11-08
  • 微信小程序 网络请求(GET请求)详解

    这篇文章主要介绍了微信小程序 网络请求(GET请求)详解的相关资料,需要的朋友可以参考下...2016-11-22
  • 微信小程序如何获取图片宽度与高度

    这篇文章主要给大家介绍了关于微信小程序如何获取图片宽度与高度的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-10
  • 微信小程序二维码生成工具 weapp-qrcode详解

    这篇文章主要介绍了微信小程序 二维码生成工具 weapp-qrcode详解,教大家如何在项目中引入weapp-qrcode.js文件,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下...2021-10-23
  • C#中动态显示当前系统时间的实例方法

    想在网页中动态地显示当前系统的时间,找了好多,不过都是一些停在那里不动的。。。不过皇天不负有心人,终于让我找到了...2020-06-25
  • 微信小程序自定义tabbar组件

    这篇文章主要为大家详细介绍了微信小程序自定义tabbar组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-03-14