PHP和UNIX的时间戳记

 更新时间:2016年11月25日 16:04  点击:2080

这是一个指南,您将不会有一个独立的效果或文件,本月底指南,但你会-希望-有一个了解的U n ix时间戳,让您一个强大的形式管理你的P H P应用。

注意:
此指南预期读者了解如何MySQL数据库的工作和基本知识的PHP
Unix的时间,或POSIX正时间,是一个系统的描述时间点。它被广泛用于不仅对类Unix操作系统,但在许多其它计算机系统,包括Java编程语言。这是一个编码为协调世界,并有足够的类似线性代表时间的推移,它常常是一个错误。

UNIX的时间被广泛使用的PHP 。它的数额秒之间1970年1月1号00:00:00 ( Unix的时代)和本时间,以最接近的第二位。正如你可以想像,在过去35年,现在相当大的数目!

Unix系统时间的事情之一是处理不同的Windows服务器相比, * nix中的服务器。对Linux服务器的时间戳可以积极或消极的,相当于之前和之后的Unix时代。但是Windows服务器生产-1 ,而不是消极的时间戳,或在PHP 5.1 ,它产生虚假的。

PHP有许多预先确定的职能,利用Unix的时间,职能,我们将使用包括:

  • date()
  • mktime()
  • strtotime()
  • time()
  •  
  • 日期( )可能是最常用的日期功能在PHP中,它可以产生目前的日期或选定的时间在大量的概率。表的所有字符串限定在这里可

    mktime ( )已参数,每个设置时间:第二,分钟,小时,月,日及一年。第七届参数是根据每天节省但是如果此设置单独留PHP将找到的DS小时的本身。 mktime ( )返回时间戳记参数的讲话。

    strtotime ( )转换成一个字符串到一个时间戳,如果不能做到这一点它会返回-1或虚假的。

    时间( )返回当前的时间最接近的第二个作为一个时间戳。

    情景
    你有一个形式,进入数据到MySQL数据库包括日期,在不同的网页你需要回电只是其中之一您的数据库列。

    解决方案:作为Unix的时间每一秒的变化,他们几乎是独一无二的,以便使用,您可以选择某行的时间戳,例如:

    $sql = "SELECT * FROM data WHERE timestamp = " . strtotime("Sunday 3rd August 15:20:36");
    $result = mysql_query($sql);
    $row = mysql_fetch_assoc($result);
    echo "<pre>";
    print_r($row);
    echo "</pre>";
    此脚本进行了查询的数据库表“数据”选择的所有行的时间戳是相同的时间戳记的“星期日8月3日15点二十分36秒。 ”脚本然后显示阵列美元排这是所有的数据检索查询。

    这解决了问题,因为所有的数据只有一列是一个数组美元,连续随时可以输出到该网页。缺点这一解决方案是,时间是一个非常准确的,如果所谓的日期,甚至第二次了它不会选择正确的数据。

    你有一个截止日期为一块的工作,你想知道有多少小时你已经离开。

    解决方案:您可以使用mktime功能,输入日期的截止日期和时间戳记减去这与目前的时间找出多少时间了。
    $day = 1;
    $month = 11;
    $year = 2005;
    $deadline = mktime('', '', '', $month, $day, $year);
    $now = time();
    $age = $deadline - $now;
    $hours = floor($age * 60 * 60);
    $age = $hours * 24;
    echo "Only $age days ($hours hours) left!";
    此脚本使用mktime ( )获得的Unix时间戳2005年十一月一号(新cssreboot截止日期)和时间( )函数获得当前的时间戳记。这两个都是号码,几秒钟内,我们可以阻挡它们。其结果是秒数的差异,所以乘以60给你分,再次60 -小时,并获得2 4天。

    你有时间和你需要显示,作为一个在不同的日期格式。
    echo date("l dS of F Y",$timestamp);
    // Produces something like: Monday 15th of August 2005
     
    echo date("r",$timestamp);
    // the RSS date format (RFC 2822)
    // example: Thu, 21 Dec 2000 16:01:07 +0200
     
    echo date("m.d.y");
    // short-hand date: 03.10.01
    日期显示功能的变化无数的变化,当前的日期和时间戳记时加入的第二个参数是日期格式,而不是现在的一个。如果你想要写的日期功能的如“的”或“ ”的字符,可以显示日期格式必须逃脱的 。完整的表的日期功能是可在这里。

    这样就大功告成了!我希望,如果你遵循了这一指导你学到一些新的PHP的时间,我希望您可以使用这个新的知识在您下次PHP的项目

    下面来看看php 如何导入.sql文件的代码

    <?php
    if(!defined('WEBROOT')) {
     die('Access Denied!');
    }
    class dbsql {
     var $dblink = NULL;
     var $queryCount = 0;
     
     function dbconnect($dbserver, $dbuser, $dbpwd, $dbname = '', $pconnect = 0, $charset = 'utf8') {
      if($pconnect) {
       if(!$this->dblink = @mysql_pconnect($dbserver, $dbuser, $dbpwd)) {
        $this->msghalt('Can not connect to MySQL server');
       }
      } else {
       if(!$this->dblink = @mysql_connect($dbserver, $dbuser, $dbpwd)) {
        $this->msghalt('Can not connect to MySQL server');
       }
      }

      /* if($this->version() > '4.1') {
       global $charset, $dbcharset;
       if(!$dbcharset && in_array(strtolower($charset), array('gbk', 'big5', 'utf-8'))) {
        $dbcharset = str_replace('-', '', $charset);
       }

       if($dbcharset) {
        @mysql_query("SET character_set_connection=$dbcharset, character_set_results=$dbcharset, character_set_client=binary", $this->dblink);
       }

       if($this->version() > '5.0.1') {
        @mysql_query("SET sql_mode=''", $this->dblink);
       }
      } */
      
      @mysql_query('set names "utf8"');

      if($dbname) {
       if(!mysql_select_db($dbname, $this->dblink)) {
        $this->msghalt('Can not connect to MySQL server');
       }
      }
     }
     
     function select_db($dbname) {
      return @mysql_select_db($dbname, $this->dblink);
     }
     
     function query($sql = '') {
      if($sql) {
       if(!($query = mysql_query($sql,$this->dblink))) {
        $this->msghalt("MYSQL Query Error!n $sql");
       } else {
        $this->queryCount++;
        return $query;
       }
      } else {
       return false;
      }
     }
     
     function unb_query($sql = '') {
      if($sql) {
       if(!($query = mysql_unbuffered_query($sql,$this->dblink))) {
        $this->msghalt('MYSQL Query Error!<br />'.$sql.'<br />');
       } else {
        $this->queryCount++;
        return $query;
       }
      } else {
       return false;
      }
     }
     
     function fetch_array($query, $result_type = MYSQL_ASSOC) {
      return mysql_fetch_array($query, $result_type);
     }
     
     function fetch_one($sql) {
      return $this->fetch_array($this->query($sql));
     }
     
     function affected_rows() {
      return mysql_affected_rows($this->dblink);
     }
     
     function num_rows($query, $q = 1)
     {
      if($q == 1) {
       return mysql_num_rows($query);
      } else {
       return mysql_num_rows($this->query($query));
      }
      //return $query;
     }
     
     function result($query, $row) {
      $query = @mysql_result($query, $row);
      return $query;
     }
     
     function num_row($query) {//暂时没用
      return mysql_num_rows($query);
     }
     
     function free_result($query) {
      return mysql_free_result($query);
     }
     
     function insert_id() {
      return ($id = mysql_insert_id($this->dblink)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"));
     }
     
     function num_fields($query) {
      return mysql_num_fields($query);
     }
     
     function version() {
      return mysql_get_server_info($this->dblink);
     }
     
     function close() {
      return mysql_close($this->dblink);
     }
     
     function insert_data($tname, $data) {
      $values = '';
      $filed = implode(',', array_keys($data));
      $filednum = count($data) - 1;
      //echo $filednum;
      $i = 0;
      
      foreach($data as $key => $val) {
       $values .= "'".$val."'";
       if($i < $filednum) {
        $i++;
        $values .= ',';
       }
      }
      $sql = "INSERT INTO ".$tname." (".$filed.") VALUES(".$values.")";
      return $this->unb_query($sql);
     }
     
     function update_data($tname, $fid, $data, $whereid = 'id') {
      $col = array();
      foreach($data as $key => $values)
      {
       $col[] = $key."='".$values."'";
       
      }
      $sql = "UPDATE ".$tname." SET ".implode(',', $col)." WHERE $whereid='$fid'";
      return $this->unb_query($sql);
     }
     
     function error() {
      return (($this->dblink) ? mysql_error($this->dblink) : mysql_error());
     }
     
     function errno() {
      return intval(($this->dblink) ? mysql_errno($this->dblink) : mysql_errno());
     }
     
     function msghalt($msg = '') {
      $message = "<html>n<head>n";
      $message .= "<meta content="text/html; charset=utf-8" http-equiv="Content-Type">n";
      $message .= "<style type="text/css">n";
      $message .=  "body,p,pre {n";
      $message .=  "font:12px Verdana;n";
      $message .=  "}n";
      $message .=  "</style>n";
      $message .= "</head>n";
      $message .= "<body bgcolor="#FFFFFF" text="#000000" link="#006699" vlink="#5493B4">n";

      $message .= "<p>Datebase Error:</p><pre><b>".htmlspecialchars($msg)."</b></pre>n";
      $message .= "<b>Mysql error number</b>: ".$this->errno()."n<br />";
      $message .= "<b>Mysql error description</b>: ".htmlspecialchars($this->error())."n<br />";
      $message .= "<b>Date</b>: ".date("Y-m-d @ H:i")."n<br />";
      $message .= "<b>Script</b>: http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'] .'?'.$_SERVER['QUERY_STRING']."n<br />";

      $message .= "</body>n</html>";
      echo $message;
      exit;
     }
    }

    /**********************
    $sb = new dbsql();
    $sb->dbconnect('localhost','root','','fdwp');
    echo 'fdfd';
    ****************************/
    ?>

    PHP 文件处理

    当书面申请网页,它通常重要的是能够保存数据。一般的做法是两种方式之一:写入数据到一个文件,或保存在一个数据库(如MySQL的) 。当然,更容易的方法(不需要其他技术)是写入文件,然后读取并解析它们自己。这简单的这正是我在这里讨论。

    因此,让我们开始吧:

    打开一个文件的阅读和写作,我们开始使用打开功能。这只是开辟了档案资源为我们在以后的使用功能


    <?php
     $filename = &apos;file.txt&apos;;
     $handle = fopen($filename, &apos;r&apos;);
    ?>



    值得一提的是我打开文件进行读取。请注意' R '等?这是模式的论点,并允许您使用变量$文件阅读,或写作,这取决于你的需要。

    你可以看到不同的模式,开辟了档案文件的功能(根据表1 ) 。
    读取一个文件,最简单的方法是利用fread方法。这需要两个参数,档案资源从以前的功能(打开)和一个长度参数。


    <?php
     $content = fread($handle, filesize($filename));
    ?>

    我不得不使用文件大小,以便阅读文件的末尾。否则,该功能将不知道什么时候停止阅读。
    写作到一个文件中做类似的方便。这一次,我们将只使用fwrite ,其中有两个要求论点:文件处理资源,该字符串写入(第三可选的参数是长度的内容写入) 。
    <?php
     $handle = fopen($filename, &apos;a&apos;);
     fwrite($handle, &apos;Hello World!&apos;);
    ?>

    我不得不重新处理美元的变量,因为以前的资源仅开放供读。
    捷径
    好吧,既然你知道如何打开,读,写的全部档案,很长的路,这里有一些捷径。我倾向于避免这些,但真的没有错用。请注意,这两种需要PHP5 。

    而不是打开和fread ,可以简单地使用file_get_contents 。唯一的理由是需要的文件,它会返回一个字符串的内容
    <?php
    $contents = file_get_contents(&apos;file.txt&apos;);
    ?>

    <?php
    file_put_contents(&apos;file.txt&apos;, &apos;Hello World!&apos;);
    ?>

    呵呵,下面代码有一点乱啊,是我在测试时做的,php mysql日期计算代码[datediff]也是我今天需要时才来试的喽.下面看看代码

    function a($d){
    $Date_1=date("Y-m-d");
     
    $Date_2=$d;

    $Date_List_a1=explode("-",$Date_1);
     
    $Date_List_a2=explode("-",$Date_2);

    $d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]);

    $d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]);

    return round(($d1-$d2)/3600/24);
    }

    //echo $Days;

    $d=date("Y-m-d H:i:s");
    $sql ="Select * from wk_member where m_ip='127.0.0.1' and datediff(m_dtime,'$d')=0 ";
    $result =mysql_query($sql) or die(mysql_error());
    if(mysql_num_rows($result)<5){
     echo 't';
    }
    while ($rs =mysql_fetch_array($result) ){
     echo $rs['id'];
     echo '<br>';
    }

    本站原创转载请注明 www.111cn.net

    php 文件计数据器+mysql双保护,这是上次升级版了,上次流量大太经常出问题今天修改过来了.

    <?php
     require_once("../inc/connect.php");
     Class Sit_count{
       public $FileName = 'count.txt'; 
      function Count_add(){
       if(file_exists($this->FileName) ){
        $Temp = file_get_contents($this->FileName);    
        $Array = explode("=",$Temp); 
        if(count($Array) != 2){   
         $Tmp ='mytext='.$this->Tcount();
        }else{
         $Total = $Array[1]+1;  
         $Tmp =$Array[0].'='.$Total;      
        }
        $T = @fopen($this->FileName,'w');
        if($T){
         fwrite($T,$Tmp);
         fclose($T);
        }
        mysql_query("update wk_count set count_bak =count_bak+1 where id=1");
       }else{
        echo '! file_exists';
       }
       
      }
     
      function Tcount(){
        $result =mysql_query("Select * from wk_count where id =1 ") or die(mysql_error());
       $rs =mysql_fetch_array($result);
       return $rs['count_bak'];
       
      }
     }
      $tp = new Sit_count;
      $tp->Count_add();
    ?>
    本站原创转载注明www.111cn.net/phper/php.html

    [!--infotagslink--]

    相关文章

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

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

      这篇文章主要介绍了教你怎么用Java获取国家法定节假日,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下...2021-04-23
    • PostgreSQL TIMESTAMP类型 时间戳操作

      这篇文章主要介绍了PostgreSQL TIMESTAMP类型 时间戳操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-12-26
    • .NET/C# 使用Stopwatch测量运行时间

      这篇文章主要介绍了.NET/C# 使用Stopwatch测量运行时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
    • 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 两个时间戳相减出现结果错误的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-12
    • 常用的日期时间正则表达式

      常用的日期时间正则表达式 下面收藏了大量的日期时间正则匹配函数,包括分钟,时间与秒都能达到。 正则表达式 (?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
    • C#中动态显示当前系统时间的实例方法

      想在网页中动态地显示当前系统的时间,找了好多,不过都是一些停在那里不动的。。。不过皇天不负有心人,终于让我找到了...2020-06-25
    • postgresql 中的时间处理小技巧(推荐)

      这篇文章主要介绍了postgresql 中的时间处理小技巧(推荐),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-29
    • 帝国CMS显示指定时间内更新的信息数量

      /*解决代码高亮太长不换行*/ .syntaxhighlighter{word-break:break-all;} uParse('#newstext', {rootPath: '/e/extend/ueditor/'}) 帝国CMS显示指定时间内更新的信息数...2016-11-01
    • C#使用TimeSpan时间计算的简单实现

      这篇文章主要给大家介绍了关于C#使用TimeSpan时间计算的相关资料,以及通过一个实例代码给大家介绍了C#使用timespan和timer完成一个简单的倒计时器的方法,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧...2020-06-25
    • php根据日期或时间戳获取星座信息和生肖等信息

      分享一个利用php根据日期或时间戳获取相应的干支纪年,生肖和星座信息的函数方法,具体函数代码以及使用方法如下: /** 判断干支、生肖和星座 */ function birthext($birth){ if(strstr($birth,'-')===false&&strlen($bi...2015-10-21
    • C# 当前系统时间获取及时间格式详解

      这篇文章主要介绍了C# 当前系统时间获取及时间格式详解的相关资料,这里提供代码实例,帮助大家学习参考,需要的朋友可以参考下...2020-06-25
    • C#获取文件创建时间的方法

      这篇文章主要介绍了C#获取文件创建时间的方法,涉及C#文件操作的技巧及CreattionTime属性的使用方法,需要的朋友可以参考下...2020-06-25
    • PowerShell中使用Get-Date获取日期时间并格式化输出的例子

      这篇文章主要介绍了PowerShell中使用Get-Date获取日期时间并格式化输出的例子,本文讲解了直接调用Get-Date、在Write-Host中使用Get-Date、格式化输出的方法,需要的朋友可以参考下...2020-06-30
    • Unity时间戳的使用方法

      这篇文章主要为大家详细介绍了Unity时间戳的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
    • php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法

      php获取今日开始时间戳和结束时间戳$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;//php获取昨日起始时间戳和结束时间...2013-10-04
    • Mybatis和Mybatis-Plus时间范围查询方式

      这篇文章主要介绍了Mybatis和Mybatis-Plus时间范围查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-08-06
    • Vue 中获取当前时间并实时刷新的实现代码

      这篇文章主要介绍了Vue 中获取当前时间并实时刷新,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-05-13