International PHP Conference Berlin 2025

mktime

(PHP 4, PHP 5, PHP 7, PHP 8)

mktimeBir tarih için Unix zaman damgasını döndürür

Açıklama

mktime(
    int $saat,
    ?int $dakika = null,
    ?int $saniye = null,
    ?int $ay = null,
    ?int $gün = null,
    ?int $yıl = null
): int|false

Verilen bağımsız değişken düzenine göre Unix zaman damgasını döndürür. Bu zaman damgası, Unix Zaman Başlangıcı (1 Ocak 1970 00:00:00 GMT) ile belirtilen zaman arasında geçen süreyi uzun tamsayı türünde saniye olarak belirtir.

Belirtilmeyen seçimlik bağımsız değişkenlerin yerine yerel tarih ve zamana göre geçerli değerin kullanılması sağlanmıştır.

Uyarı

Bağımsız değişkenlerin tuhaf bir sırada olduğu unutulmamalıdır. Sıralama ay, gün, yıl olup alışılmış gün, ay, yıl sıralamasında değildir.

mktime() işlevinin bağımsız değişkenler olmaksızın kullanımı desteklenmemekte olup ArgumentCountError ile sonuçlanmaktadır. Geçerli zaman damgasını elde etmek için time() işlevi kullanılabilir.

Notlar

mktime() işlevinin bağımsız değişkensiz çağrılmasının kullanımı önerilmemektedir. Geçerli zaman damgasını almak için time() kullanılabilir.

Bağımsız Değişkenler

saat

ay, gün ve yıl'a göre saptanan günün başlangıcına göreli saat sayısı. Negatif değerler günün geceyarısından önceki saatine karşılıktır. 23'ten büyük değerler ertesi günün uygun saatine karşılıktır.

dakika

saat'in başlangıcına göreli dakika sayısı. Negatif değerler önceki saatin dakikalarına, 59'dan büyük değerler ise sonraki saatin dakikalarına karşılıktır.

saniye

dakika'nın başlangıcına göreli saniye sayısı. Negatif değerler önceki dakikanın saniyelerine, 59'dan büyük değerler ise sonraki dakikanın saniyelerine karşılıktır.

ay

Önceki yıl sonuna göreli ay sayısı. 1-12 arasındaki değerler ilgili yılın normal takvim aylarına karşılıktır. 1'den küçük (negatifler dahil) değerler ters sırada önceki yılın aylarına karşılıktır, yani 0 Aralık, -1 Kasım, vb.

gün

Önceki ayın sonuna göreli gün sayısı. 1'den 28, 29, 30 veya 31'e kadar (aya bağlı olarak) değerler ilgili ayın normal günlerine karşılıktır. 1'dek küçükler (negatifler dahil) önceki ayın günlerine karşılıktır, yani 0 önceki ayın son günü, -1 daha önceki günü vb. İlgili ayın gün sayısından büyük değerler sonraki ayın günlerine karşılıktır.

yıl

Yıl sayısı, iki ya da dört hane olabilir. 0-69 değerleri arasında olanlar 2000-2069 ile ve 70-100 arasındaki değerler ise 1970-2000 yıllarıyla eşleşir. Sistemlerdeki time_t türü 32 bit işaretli tamsayı türüyle belirtilmiştir ve günümüzde çok kullanılmaktadır. yıl bağımsız değişkeni için geçerli aralık 1901 ve 2038 arasındadır.

Dönen Değerler

Başarı durumunda int türünden Unix zaman damgası, zaman damgası int türüne sığmıyorsa false döner.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0 saat artık seçimlik değil. Unix zaman damgasına ihtiyaç olursa time() işlevi kullanılabilir.
8.0.0 dakika, saniye, ay, gün ve yıl artık boş olabiliyor.

Örnekler

Örnek 1 - Basit bir mktime() örneği

<?php
// Öntanımlı zaman dilimini belirtelim.
date_default_timezone_set('UTC');

echo
"July 1, 2000 is on a " . date("l", mktime(0, 0, 0, 7, 1, 2000));
// Çıktısı: July 1, 2000 is on a Saturday

echo date('c', mktime(1, 2, 3, 4, 5, 2006));
// Şöyle bir şey basar: 2006-04-05T01:02:03+00:00
?>

Örnek 2 - mktime() örneği

mktime() işlevi tarih hesaplamaları ve geçerlilik denetimi için kullanışlıdır. Aralık dışına çıkan değerleri (ayın 32'si gibi) otomatik olarak doğru hesaplar. Örneğin, aşağıdaki satırların üreteceği dizge "Jan-01-1998" olacaktır.

<?php
echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997));
echo
date("M-d-Y", mktime(0, 0, 0, 13, 1, 1997));
echo
date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998));
echo
date("M-d-Y", mktime(0, 0, 0, 1, 1, 98));
?>

Örnek 3 - Ayın son günü

Verilen herhangi bir ayın son günü, gelecek ayın -1'inci değil 0'ıncı günü olarak ifade edilebilir. Aşağıdaki iki örnek de "2000 Şubat'ının son günü: 29" dizgesi üretilecektir.

<?php
$songün
= mktime(0, 0, 0, 3, 0, 2000);
echo
"2000 Şubat'ının son günü: ", date('d', $songün);
$songün = mktime(0, 0, 0, 4, -31, 2000);
echo
"2000 Şubat'ının son günü: ", date('d', $songün);
?>

Ayrıca Bakınız

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top