IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 19 Temmuz 2006, 13:58   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
PHP - Tarih ve Saat İşlemleri




Bu dökümanda sizlere Php de Tarih ve Saat kavramları , kullanımı vb. konularda bilgi vermeye çalışacam. Fazla geyiğe yer vermeden hemen konuya başlıyalım.
Efendim benim php de tarih ve saat için kullandığım iki tane fonksiyon var. Yaklaşık 2 aydır pek takip edemiyorum ama Php nin yeni sürümünde yeni bir iki fonksiyon varmış sanırım. İlerde gerekirse onlar hakkındada bişiler yazarız. Ama şimdilik sihirli kelimelerimiz.
date() ve time() ( Edi ile Büdü gibi oldu ) efendim bu iki fonksiyon bize php nin lütüflerinden. İkisi arasındaki farkları hatta saati öğrenirken neden date() kullanacağımızı aşağıdaki satılarda öğreneceksiniz.
Öncelikle time() fonksiyonu ile başlıyalım. Kullanımı çok basittir.
time(); Fonksiyonu

<?
$a = time();
echo $a;
echo "<br>";
$b = time()-60;
echo $b;
?>
Şimdi yukarıdaki satırları tek tek inceleyelim. Kodumuzu kaydedip çalıştırdıktan sonra. ( Bu arada dikkat ettiyseniz ilk konulardaki gibi size dosyanızı kaydetmeniz konusunda; dosya adı yapmanız gerekenler gibi bilgileri tekrar etmiyorum. Zira dersleri takip ediyorsanız zaten sorun yaşamıyacaksınız ) Aşağıdaki gibi bir çıktı alırız.
1013143172
1013143112
Bu gördüğünüz rakamlardan üstteki satır. Unix saat biçiminde o anki sistem saatidir. Alttakide O an ki saatten 60 saniye yani 1 dakika öncesini temsil eder. Şimdi kodumuzu tek tek inceyelim.
$a = time(); Bu satır ile $a adındaki değişkene time() fonksiyonu ile o anki sistem saatinin değerini atadık
echo $a;Bu satırı artık açıklamaya gerek yok sanırım Neyse unutanlar vardır belki . Bu satır ile $a değişkenini ekrana yazdırdık.
echo "<br>";Bu satır ilede daha önce öğrendiğimiz gibi. Bir alt satıra geç anlamına gelen <br> adlı html kodunu yazdırdık.
$b = time()-60;Bu satır ile time() komutu ile öğrendiğimiz sistem saatinden 60 saniye çıkardık. Böylece 1 dakika önceki saate ulaştık. Eğer + bir değer girseydik ozaman daha ilerki bir zamanı öğrenebilecektik. Neden böyle bir şey yaptığımı az sonra anlıyacaksınız.
echo $b; bu satır ilede $b değişkenini ekrana bastırdık.
Şimdi neden $b = time()-60 diye bir değişken yaptığımı anlatayım. Şimdi şöyle düşünün ileride bir fonksiyon yapacaksınız ve sayfanızda o an kaç kişinin olduğunu öğrenmek isteyeceksiniz. İşte ozaman yazacağınız fonksiyonlarda Şöyle bir mantık kurmanız gerekecek.
Kullanıcı siteye girdiği zaman onu database e kaydet. Eğer database giriş saati X kadar dakikayı geçerse sil. gibi gibi.. Tabi bu kadar basit omlıyacak. Ama en yakın zamanda bu sistemi size anlatıcam.
Şimdi time() fonksiyonu ile ilgili söliyebileceklerim bu kadar.
data(); Fonksiyonu
İşte şimdi en önemli noktaya geldik. Php ile ilgili sayfanızda bulunacak bütün saat tarih vs. gibi bilgilerde date() fonksiyonunu kullanacağınız için bu bölüme konsantre olmanızı tavsiye ediyorum.
Kullanımı oldukça basittir ( Php de herşeyin kullanımı basit aslında )


<?
$a = date("d-m-y");
echo $a;
?>
Bu şekilde bir kod yazıp kaydedin. Çalıştırdığınız zaman ekran da aşağıdaki gibi bir çıktı görüceksiniz.
08-02-02
Yukarıdaki kodda dikkat ettiyseniz date(); fonksiyonunda parantezin içinde bir takım harfler olduğunu gördük. Eğer biraz ingilizce bilginiz varsa. Yada şu dandik digital saatlerden kullandıysanız.
D nin Day , M nin Month , Y ninde Year olduğunu anlıyacaksınız. Aradaki - işaretlerinide anladınız sanırım Efet deneyin bakalım. Aşağıdaki kodu


<?
$a = date("d / m / y");
echo $a;
?>
denediniz mi ? Bunların haricinde date fonksiyonundan zaman bilgisinide alabiliriz.
Onun için aşağıdaki gibi kullanmanız yeterli olucaktır.


<?
$a = date("H:i");
echo $a;
?>
Evet artık tarih ve saat bilgisini almayı öğrendik. Tabi ileride yaptığınız scriptler geliştikçe daha gelişmiş tarih bilgilerine ihtiyacınız olacaktır.
Mesala sayfanıza yurt dışından mesaj gelen kişilere farklı bir saat göstermeniz gerekecek. Yada serverınız yabancı bir ülkede yada ücretsiz bir servisten yararlanıyorsanız, adamlar sırf sizin için sistem saatlerini değiştirmeyeceklerdir. Ozaman ne yapıcaksınız.
Örnek vermek gerekirse sizinle , hostunuzun saati arasında 7 saat fark olduğunu düşünelim. Yani serverınız sizden 7 saat geri ozaman aşağıdaki kodlara bakalım


<?
$saatfarki = +7;
$saat = date("H:i",(time()+3600*$saatfarki));echo $saat;
?>
Yukarıdaki script işinizi görücektir. Aşağıda size parantez içine yazabileceğiniz parametrelerin bir listesini veriyorum.
a 12 saat esasına dayanan Anglo-Sakson sistemlerinde öğleden önce ("am") veya öğleden sonra ("pm") işaretinin verilmesini sağlar.
A Aynı işaretlerin büyük harfle yazılmasını sağlar.
d İki haneli gün sayısı, tek haneli günlerin önüne sıfıır konur: "01" - "31"
D Üç haneli gün adı kısatması: "Cum"
F Uzun ay adı: "Ocak"
h 12 saatlik sistemde saat: "01" - "12"
H 24 saatlik sistemde saat: "00" - "23"
g 12 saatlik sistemde tek haneli saatlerin önüne sıfır konmadan saat: "1" - "12"
G 24 saatlik sistemde tek haneli saatlerin önüne sıfır konmadan saat: "0" - "23"
i Dakika: "00" - "59"
j Tek haneli sayıların önüne sıfır konmadan gün sayısı "1" - "31"
l (küçük L harfi) Uzun gün adı: "Cuma"
L Artık yıl olup olmadığına ilişkin Boolean (doğru/yanlış) değişken. Artık yıl ise 1, değilse 0.
m Tek hanelilerin önüne sıfır konarak ay sayısı: "01" - "12"
n Tek hanelilerin önüne sıfır konmadan ay sayısı: "1" - "12"
M Kısaltılmış ay adı: "Şub"
s Saniye: "00" - "59"
S İngilizce ('ncı anlamına) 2 karakter ek: "th", "nd"
t Belirtilen ayın gün sayısı; "28" - "31"
w Haftanın gün sayısı: "0" (Pazar veya Pazartesi) - "6" (Cumartesi veya Pazar)
Y Dört haneli yıl: "2000"
y İki haneli yıl "00"
z Yılın gün sayısı: "0" - "365"
-----
Not : Date() ve Time() fonksiyonları dışında microtime() gibi bir iki zaman fonksiyonu daha vardır. Onlar gelişmiş olduğu için başka konularda ele alınacaktır. ( Şifreleme , Base alma vs. )
---
Şimdilik bu kadar bilginin yeterli olucağını düşünüyorum. Kısa bir özet yapalım
1 - Php de zaman bilgisi için Genel olarak time() ve date() fonksiyonları kullanılır. ( Bunların dışındakiler ince hesaplamalar ve uygulamalar içindir )
2 - Time() fonksiyonu ; Unix türünde saat bilgisini verir.
3 - Sistem saatinden daha öncesini yada daha sonrasını hesaplamak için saniye cinsinden değer eklenir. ( Ör:$b = time()-60 - 60 saniye öncesi )

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Cevapla

Etiketler
islemleri, saat, tarih, ve


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
ASP Tarih ve Saat hAte ASP/ASP.NET 0 12 Ekim 2014 07:11
Tarih / Saat saywhat TCL Scriptler 3 27 Ekim 2013 04:58
Tarih Zaman İşlemleri MorfiN PHP 0 12 Mayıs 2012 09:41
!gun,!saat,!tarih OperServ mIRC Scripting Sorunları 7 08 Mart 2009 18:33
!saat !tarih barhalli mIRC Scripting Sorunları 4 05 Ağustos 2007 21:08