Rumah pembangunan bahagian belakang tutorial php 原创处理时间的类,请大家指正_PHP

原创处理时间的类,请大家指正_PHP

Jun 01, 2016 pm 12:35 PM
time Asal berurusan dengan masa

timer.class.php

//###################### Start Introduce #######################################
// author: bluemaple ; email: bluemaple@x263.net
// 最后修改时间2002-1-28 1:35
// 此函数求解决返回时间显示格式问题。包括date()函数的所有格式,默认的$type为最常用的类型
// 除了$year,$month,$day,$hour,$minute,$second;添加了$week(周),$zone(一年中的第几天),$numMonth(当前月份的天数)
// 其中默认的都为最常用的格式
// 特点,在时间处理中用得最多的是mktime,这里设置mktime可以按照习惯输入(年,月,日)显示
// mktimeY();mktimeW();mktimeM();mktimeD();可以方便设置一个时间相隔y年,n月,在mysql检索中方便使用
// subTime();函数可以方便求得两个时间相差的天数,周等
//####################### End Introduce ########################################

class TIMER{
  var $year;   // 年
  var $month;  // 月
  var $day;    // 日
  var $hour;   // 时
  var $minute; // 分
  var $second; // 秒
  var $week;   // 周
  var $zone;   // 一年中的第几天
  var $numMonth; // 当前月份的天数
  var $mktime;  // mktime
     
  function year($time="",$type=0){ // 返回年
                                   // $type=0表示返回四位的年份
                                   // $type=1表示返回二位的年份
      if($time=="") $time=time();
      if($type==0) $this->year=date("Y",$time);
      if($type==1) $this->year=date("y",$time);
      return $this->year;
       }    
      
  function month($time="",$type=0){ // 返回月
                                    // $type=0表示返回1~12
                                    // $type=1表示返回01~12
                                    // $type=2表示返回jan..三个英文字母
                                    // $type=3表示返回英语全名
      if($time=="") $time=time();
      if($type==0) $this->month=date("n",$time);
      if($type==1) $this->month=date("m",$time);
      if($type==2) $this->month=date("M",$time);
      if($type==3) $this->month=date("F",$time);
      return $this->month;
      }   
      
  function day($time="",$type=0){ // 返回日
                                  // $type=0返回1~31
                                  // $type=1返回01~31
      if($time=="") $time=time();
      if($type==0) $this->day=date("j",$time);
      if($type==1) $this->day=date("d",$time);
      return $this->day;
      }    

  function hour($time="",$type=0){ // 返回时
                                   // $type=0返回1~24
                                   // $type=1返回1~12
                                   // $type=2返回01~24
                                   // $type=3返回01~12
      if($time=="") $time=time();
      if($type==0) $this->hour=date("H",$time);
      if($type==1) $this->hour=date("h",$time);
      if($type==2) $this->hour=date("G",$time);
      if($type==3) $this->hour=date("g",$time);
      return $this->hour;
      }    
      
  function minute($time="",$type=0){ // 返回分
      if($time=="") $time=time();
      if($type==0) $this->minute=date("i",$time);
      return $this->minute;
    }
   
  function second($time="",$type=0){ // 返回秒
                                     // $type=0 返回1~59
                                     // $type=1 返回字尾加英文序数,二个英文字母
      if($time=="") $time=time();
      if($type==0) $this->second=date("s",$time);
      if($type==1) $this->second=date("S",$time);
      return $this->second;
      }
  
  function week($time="",$type=0){ // 返回周
                                   // $type=0 返回0~6
                                   // $type=1 返回三个字母的周
                                   // $type=2 返回全字母的周
      if($time=="") $time=time();
      if($type==0) $this->week=date("w",$time);
      if($type==1) $this->week=date("D",$time);
      if($type==2) $this->week=date("l",$time);
      return $this->week;
      }
  
  function zone($time=""){ // 一年中的第几天;
        if($time=="") $time=time();
      $this->zone=date("z",$time);
      return $this->zone;
      }
  
  function numMonth($time=""){ // 当前月的天数
      if($time=="") $time=time();
      $this->numMonth=date("t",$time);
      return $this->numMonth;
      }

  function time($time=""){ //取得所有关于当前时间的参数。
      if($time=="") $time=time();
      $this->year($time);
      $this->month($time);
      $this->day($time);
      $this->hour($time);
      $this->minute($time);
      $this->second($time);
      $this->week($time);
      $this->zone($time);
      $this->numMonth($time);
      }  
   
  function mktime($year=0,$month=0,$day=0,$hour=0,$minute=0,$second=0){ // 年月日时分秒
      $this->mktime=mktime($hour,$minute,$second,$month,$day, $year);
      return $this->mktime;
      }
  
  function mktimeY($time="",$y=1){ // 取得某一时间y年以前的,默认为1
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day,($this->year-$y));
      return $this->mktime;
      }
  
  function mktimeM($time="",$m=1){ // 取得某一时间m月以前的,默认为1
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month-$m,$this->day,$this->year);
      return $this->mktime;
      }
  
  function mktimeD($time="",$d=1){ // 取得某一时间d天以前的,默认为1天
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day-$d,$this->year);
      return $this->mktime;
      }
  
  function mktimeW($time="",$w=1){ // 取得某一时间w个周以前的,默认为1周
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day-7*$w,$this->year);
      return $this->mktime;
      }

  function subTime($aTime="",$bTime=""){ // 两个时间之差,后者减去前者
      if($aTime=="") $aTime = time();
      if($bTime=="") $bTime = time();
      $subTime = $bTime - $aTime;
      $this->second=intval($subTime);
      $this->minute=intval($subTime/60);
      $this->hour=intval($this->minute/60);
      $this->day=intval($this->hour/24);
      $this->week=intval($this->day/7);
      $this->month=intval($this->day/30);
      $this->year=intval($this->monday/12);
      }
}
?>
测试text.php

require("./timer.class.php");
//###################################
echo "
___________________________________
";
$TIMER=new TIMER;
$d=$TIMER->mktimeW();
$TIMER->subTime($d);
echo "second";echo $TIMER->second;echo "
";
echo "minute";echo $TIMER->minute;echo "
";
echo "hour";echo $TIMER->hour;echo "
";
echo "day";echo $TIMER->day;echo "
";
echo "week";echo $TIMER->week;echo "
";
echo "month";echo $TIMER->month;echo "
";
echo "year";echo $TIMER->year;echo "
";
echo "
___________________________________
";
?>

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Proses operasi hos perkhidmatan WIN10 yang menduduki terlalu banyak CPU Proses operasi hos perkhidmatan WIN10 yang menduduki terlalu banyak CPU Mar 27, 2024 pm 02:41 PM

1. Mula-mula, kita klik kanan ruang kosong bar tugas dan pilih pilihan [Task Manager], atau klik kanan logo mula, dan kemudian pilih pilihan [Task Manager]. 2. Dalam antara muka Pengurus Tugas yang dibuka, kami klik tab [Perkhidmatan] di hujung kanan. 3. Dalam tab [Perkhidmatan] yang dibuka, klik pilihan [Buka Perkhidmatan] di bawah. 4. Dalam tetingkap [Services] yang terbuka, klik kanan perkhidmatan [InternetConnectionSharing(ICS)], dan kemudian pilih pilihan [Properties]. 5. Dalam tetingkap sifat yang terbuka, tukar [Buka dengan] kepada [Disabled], klik [Apply] dan kemudian klik [OK]. 6. Klik logo mula, kemudian klik butang tutup, pilih [Mulakan Semula], dan selesaikan mula semula komputer.

Berapakah kos papan tanda lampu tahap 10 Douyin? Berapa hari yang diperlukan untuk mencipta tanda kipas tahap 10? Berapakah kos papan tanda lampu tahap 10 Douyin? Berapa hari yang diperlukan untuk mencipta tanda kipas tahap 10? Mar 11, 2024 pm 05:37 PM

Pada platform Douyin, ramai pengguna tidak sabar-sabar untuk mendapatkan pensijilan tahap, dan tanda cahaya tahap 10 menunjukkan pengaruh dan pengiktirafan pengguna pada Douyin. Artikel ini akan menyelidiki harga papan lampu tahap 10 Douyin dan masa yang diperlukan untuk mencapai tahap ini untuk membantu pengguna memahami proses tersebut dengan lebih baik. 1. Berapakah kos papan tanda lampu Douyin tahap 10? Harga papan tanda lampu 10 peringkat Douyin akan berbeza-beza bergantung pada turun naik pasaran dan penawaran dan permintaan Harga umum berjulat dari beberapa ribu yuan hingga sepuluh ribu yuan. Harga ini termasuk kos tanda lampu itu sendiri dan kemungkinan bayaran perkhidmatan. Pengguna boleh membeli papan tanda cahaya tahap 10 melalui saluran rasmi Douyin atau agensi perkhidmatan pihak ketiga, tetapi mereka harus memberi perhatian kepada saluran undang-undang semasa membeli untuk mengelakkan transaksi palsu atau penipuan. 2. Berapa hari yang diperlukan untuk mencipta tanda kipas tahap 10? Mencapai tahap 10 tanda cahaya

Berapa lamakah masa yang diambil untuk membersihkan Cincin Elden? Berapa lamakah masa yang diambil untuk membersihkan Cincin Elden? Mar 11, 2024 pm 12:50 PM

Pemain boleh mengalami plot utama permainan dan mengumpul pencapaian permainan apabila bermain di Elden's Circle Ramai pemain tidak tahu berapa lama masa yang diambil untuk membersihkan Elden's Circle Proses pelepasan pemain adalah 30 jam. Berapa lama masa yang diambil untuk membersihkan Cincin Elden Jawapan: 30 jam. 1. Walaupun masa pelepasan 30 jam ini tidak merujuk kepada pas laju seperti induk, ia juga meninggalkan banyak proses. 2. Jika anda ingin mendapatkan pengalaman permainan yang lebih baik atau mengalami plot yang lengkap, maka anda pasti perlu meluangkan lebih banyak masa pada tempoh tersebut. 3. Jika pemain mengumpul kesemuanya, ia akan mengambil masa kira-kira 100-120 jam. 4. Jika anda hanya mengambil garisan utama untuk memberus BOSS, ia akan mengambil masa lebih kurang 50-60 jam. 5. Jika anda ingin mengalami semuanya: 150 jam masa asas.

Bagaimana untuk menetapkan masa untuk menerbitkan karya di Xiaohongshu? Adakah masa untuk menerbitkan karya itu tepat? Bagaimana untuk menetapkan masa untuk menerbitkan karya di Xiaohongshu? Adakah masa untuk menerbitkan karya itu tepat? Mar 24, 2024 pm 01:31 PM

Xiaohongshu, platform yang penuh dengan kehidupan dan perkongsian pengetahuan, membolehkan semakin ramai pencipta untuk menyatakan pendapat mereka secara bebas. Untuk mendapatkan lebih banyak perhatian dan suka pada Xiaohongshu, selain kualiti kandungan, masa penerbitan juga penting. Jadi, bagaimana untuk menetapkan masa untuk Xiaohongshu menerbitkan karya? 1. Bagaimana untuk menetapkan masa untuk menerbitkan karya di Xiaohongshu? 1. Fahami masa aktif pengguna Pertama, adalah perlu untuk menjelaskan masa aktif pengguna Xiaohongshu. Secara umumnya, 8 malam hingga 10 malam dan tengah hari hujung minggu ialah masa apabila aktiviti pengguna tinggi. Walau bagaimanapun, tempoh masa ini juga berbeza bergantung pada faktor seperti kumpulan penonton dan geografi. Oleh itu, untuk lebih memahami tempoh aktif pengguna, adalah disyorkan untuk menjalankan analisis yang lebih terperinci tentang tabiat tingkah laku kumpulan yang berbeza. Dengan memahami kehidupan pengguna

Penjelasan terperinci tentang teknik melihat masa fail Linux Penjelasan terperinci tentang teknik melihat masa fail Linux Feb 21, 2024 pm 01:15 PM

Penjelasan terperinci tentang teknik melihat masa fail Linux Dalam sistem Linux, maklumat masa fail adalah sangat penting untuk pengurusan fail dan perubahan penjejakan. Sistem Linux merekodkan maklumat pertukaran fail melalui tiga atribut masa utama iaitu masa capaian (atime), masa pengubahsuaian (mtime) dan masa perubahan (ctime). Artikel ini memperincikan cara melihat dan mengurus maklumat masa fail ini dan menyediakan contoh kod khusus. 1. Semak maklumat masa fail dengan menggunakan arahan ls dengan parameter -l untuk menyenaraikan fail.

Ketahui cara mengendalikan aksara khas dan menukar petikan tunggal dalam PHP Ketahui cara mengendalikan aksara khas dan menukar petikan tunggal dalam PHP Mar 27, 2024 pm 12:39 PM

Dalam proses pembangunan PHP, berurusan dengan aksara khas adalah masalah biasa, terutamanya dalam pemprosesan rentetan, aksara khas sering terlepas. Antaranya, menukar aksara khas kepada petikan tunggal adalah keperluan yang agak biasa, kerana dalam PHP, petikan tunggal adalah cara biasa untuk membungkus rentetan. Dalam artikel ini, kami akan menerangkan cara mengendalikan petikan tunggal penukaran aksara khas dalam PHP dan memberikan contoh kod khusus. Dalam PHP, aksara khas termasuk tetapi tidak terhad kepada petikan tunggal ('), petikan berganda ("), segaris ke belakang (), dsb. Dalam rentetan

Bagaimana untuk melaraskan masa pada jam tangan gshock Bagaimana untuk melaraskan masa pada jam tangan gshock Feb 21, 2024 pm 09:04 PM

Ramai pengguna tidak pasti bagaimana untuk melaraskan masa jam tangan gshock Kaedah keseluruhannya agak mudah. ​​Berikut adalah pengenalan terperinci kepada kaedah pelarasan jam tangan gshock. Cara melaraskan masa pada jam tangan gshock 1. Labelkan butang ini dahulu mengikut ABCD. Kunci: Ia boleh difahami sebagai kunci keluar, biasanya digunakan bersama dengan kunci C. Kekunci B dan kekunci D boleh difahami sebagai: kekunci tambah dan tolak, yang merupakan kekunci pelarasan Contohnya, jika sekarang pukul 13, tekan kekunci D apabila ia mencapai pukul 14. Kekunci C ialah kekunci mod Tekan untuk menukar mod Secara amnya, kekunci mod jam tangan berada di sudut kiri bawah dan mempunyai perkataan "mod" dalam bahasa Inggeris. Kaedah pengendalian 1. Mula-mula kita perlu melaraskan jam tangan ke

Bilakah Ark of Destiny Dreams akan keluar? Bilakah Ark of Destiny Dreams akan keluar? Mar 14, 2024 pm 03:00 PM

Ramai pemain ingin bertanya bila Ark of Destiny Sleepy Dream akan dikeluarkan Sleepy Dream pada 13 Mac. Terdapat juga pejuang profesional baharu Jia Nan, benua Rowan, Senjata Wira Pilihan Tuhan, BOSS baharu dan kandungan lain perincian Mari kita lihat kandungan pengenalan kepada masa pelancaran Ark of Destiny Sleepy Dreams ini. Panduan panduan Destiny Ark Bilakah Destiny Ark Sleepy Dream akan dikeluarkan Jawapan: 13 Mac Keperluan tahap item 1-Tahap 3 memerlukan tahap item untuk mencapai: 1540. Tahap 4 memerlukan tahap item untuk mencapai: 1560. , Tanda Mimpi, Jatuh putus asa. Lelaki pejuang profesional serba baharu 1. Ciri-ciri: Tenaga Syura, kumpul tenaga Syura untuk masuk [Negeri Tinju Raja] 2. Sifat profesional: Profesion jarak dekat 3. Senjata profesional: perisai lengan berat. New Continent Rowan 1. Bagaimana untuk membukanya

See all articles