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

Etiketlenen Kullanıcılar

4Beğeni(ler)
  • 4 Post By Mylife

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 23 Ocak 2025, 13:19   #1
Çevrimdışı
~ i don't care if i'm misfit. ~
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
mIRC Scripting / Time ve Date İdentifier(s)




Tarih: 23.01.2025

Konu: Time ve Date identifiers




Merhaba sevgili IRCforumları kullanıcıları ve mirc scripting severler. Sizlere bugün anlatmak istediğim forumumuzda geniş bir anlatımı olmayan time ( zaman/süre ) ve date ( tarih vb. ) identifier kullanımlarından bahsedeceğim.

$ctime => Bu identifier sistem zamanına göre 1 ocak 1970, 00:00:00 GMT'den bu yana geçen toplam saniye sayısını döndürür.

Bu kayıtlıdır ve istediğimiz zaman bu bilgiye istediğimiz tarih ve saate göre ulaşabiliriz. Aşağıda bazı örnekler vererek anlatacağım.

örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $ctime => 1737618929 olarak dönecektir.

Yukarıda bahsettiğim gibi bu echo komutunu kullandığımız an bize tam o zamanın toplam saniye sayısını verir.

$asctime => Bu identifier belirlenen zaman için varsayılan formatı döndürür.

kısacası bunu şöyle açıklayabilirim; $ctime ile elde edilen bilginin ne olduğunu onaylatmak için kullanılabilir olayı daha iyi anlamanız için örneklendireceğim.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $asctime =>Thu Jan 23 10:59:50 2025

bize bu şekilde dönecektir. Burada gün saat ve yıl olarak bilginin içerdiğini farketmişsinizdir.

Şimdi yukarıda öğrendiğimiz $ctime identifier ile elde ettiğimiz verinin hangi tarihe ait olduğuna bir bakalım.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $asctime(1737618929,dd/mm/yy) => 23/01/25

olarak dönecektir bize.

Devam edelim...

1970 den itibaren herhangi bir geçen zaman için bu zamanın hangi değerlere sahip olduğunu $ctime ile öğrenebiliriz.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $ctime(21/4/72 1:30:37) => 72657037

burada bize bu değeri vericektir. 4. Ayın 21 inde ve yıl 72 saat 1:30 daki tam geçen süreyi elde ederiz. Bunu şu şekilde görebiliriz.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $asctime(72657037,dd/mm/yy / hh:nn:ss) => 21/04/72 / 01:30:37

olarak dönecektir bizlere tam tarih ve saat bilgisini alabiliyoruz.

$ctimer => Bu identifier bizlere tetiklenen timer çalışmasının adını verir.

$date => Geçerli tarihi gün/ay/yıl formatında döndürür. ABD formatında tarihi almak için $adate kullanılabilir.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $date =>23/01/2025

olarak bize dönecektir. ( gün ay yıl )

Örnek2;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $adate => 01/23/2025

olarak bize dönecektir ( ay gün yıl )

Aralarındaki fark aylar ve günlerin yer değiştirmesinden ibarettir.

$day => Bu identifier geçerli günün adını döndürür. ( pazartesi, salı, çarşamba vb. )

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $day => Thursday

olarak dönecektir.

Burada ingilizce vericektir bilgileri ama diyorsanız ben ingilizceden anlamam illede türkçe olsun güzelim türkçemizin neyi var kardeşim. Bunun içinde aşağıya ufak bir yardımcı yol sunacağım örnek olması için.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias _gnler return $replace($1-,Monday,pazartesi,Tuesday,salı,Wednesday,çarşamba,Thursday,perşembe,Friday,cuma,Saturday,cumartesi,Sunday,pazar)

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $_gnler($day) => perşembe

olarak dönecektir.

Örnek2;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $replace($day,Monday,pazartesi,Tuesday,salı,Wednesday,çarşamba,Thursday,perşembe,Friday,cuma,Saturday,cumartesi,Sunday,pazar) => Perşembe

dönecektir.

$daylight => Bu identifier yaz saati uygulaması yürürlükteyse saniye cinsinden offset değerini döndürür, değilse 0 döndürür.

$duration(seconds,N) => Bu identifier belirtilen saniye sayısını hafta/gün/saat/dakika/saniye formatında döndürür.

N parametresi isteğe bağlıdır. Eğer N = 2 ise, sonuç saniye değerini içermez. Eğer N = 3 ise, sonuç hh:nn:ss formatında olur.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $ctime => 1737621342

elde ettik.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $asctime(1737621342) => Thu Jan 23 11:35:42 2025

elde ettik.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $duration(1737621342,1) => 2873 hafta 8 sat 35 dakika 42 saniye

elde ederiz. Burada alınan bilgi ile en ilk başta geçen zaman diliminin kıyaslanmasıdır. İdentifier içerisinde N değerini 2 veya 3 olarak değiştirirseniz formatıda değişicektir.

$timezone => Bu identfier geçerli saat dilimi ayarını saniye cinsinden döndürür.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $timezone => -10800

olarak dönecektir.

$fulldate => Bu identifier geçerli tarihi Çar Haz 26 21:41:02 1996 formatında döndürür.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $fulldate => Thu Jan 23 11:48:02 2025

olarak dönecektir.


$idle => Bu identifier geçerli boşta kalma süresini döndürür pek kullanıldığını görmedim ama çok kullanışlı bir identifier. (ctcp finger tarafından döndürülen süre ile aynıdır).

$ltimer => Bu identifier timer komutu tarafından başlatılan son zamanlayıcının kimliğini döndürür.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/timerali 1 40 /msg #deneme deneme yapıyorum.

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
//echo -a $ltimer => ali

olarak dönecektir.

$time => Bu identifier geçerli zamanı saat, dakika, saniye formatında döndürür.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
/echo -a $time => 12:04:55

olarak dönecektir.

$timer(N/name) => Bu identifier zamanlayıcı listesindeki N zamanlayıcısının kimliğini döndürür. N değeri içerisinde sayı veya timer adı yazabilme olanağı tanır ve timer ile birlikte çalışır.

Properties: com, time, reps, delay, type, secs, mmt, anysc, wid, cid, hwnd, pause, name

$timer(0) => aktif zamanlayıcıların sayısını döndürür
$timer(1) => 1. zamanlayıcının kimliğini döndürür
$timer(1).com => 1. zamanlayıcının komutunu döndürür
$timer(3).type =>3. zamanlayıcının çevrimiçi/çevrimdışı durumunu döndürür
$timer(3).secs => zamanlayıcının tetiklenmesine kalan saniye sayısını döndürür
$timer(3).mmt => zamanlayıcı bir multimedya zamanlayıcısı ise $true döndürür
$timer(3).anysc => /timer -i anahtarı belirtilmişse $true döndürür

Not: name özelliği, belirtilen parametreyi bir zamanlayıcı adı olarak kabul eder (eğer ad bir sayı ise) ve zamanlayıcı N pozisyonunu döndürür.

Şimdi aklımda olan timer ve $ltimer identifier kullanarak yapabileceğiniz şeyler için bir örnekte bulunacağım. Sunucu içerisinde yeni gelişmekte olan sunucuların en büyük problemleri sohbet ortamının yeterince oluşamamasıdır. Bunun için sunucu sahiplerine sağlanan bazı konuşma botları mevcut ama bunların diyalogları pek mantıklı sohbetler olmuyor benim gözlemlediğim kadarıyla diyalogları kendinizin ayarlayabileceği güzel bir sohbet oluşturma imkanınız sağlanabilir aslında $timer ve $ltimer kullanarak basit bir örnekle ifade edeceğim.

Örnek;

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
alias _aktf { if ($timer(0) < 1) { timerali 1 5 msg #deneme selam } if $regex($ltimer,/a[LI][iİ]/xiS) { timerali2 1 10 msg #deneme selam ali nasılsın? } if $regex($ltimer,/a[LI][iİ]2/xiS) { timerali3 1 15 msg #deneme iyiyim teşekkür ederim. sen nasılsın? } if $regex($ltimer,/a[LI][iİ]3/xiS) { timerali4 1 20 msg #deneme bende iyiyim teşekkür ederim. } }

Kullanım;

/_aktf

Görünüm;

* Zaman ali aktif edildi
-
* Zaman ali2 aktif edildi
-
* Zaman ali3 aktif edildi
-
* Zaman ali4 aktif edildi

Text;

[13:01:44] <Mylife> selam ( ilk timer )
[13:01:49] <Mylife> selam ali nasılsın? ( 2. timer )
[13:01:54] <Mylife> iyiyim teşekkür ederim. sen nasılsın? ( 3. timer )
[13:01:59] <Mylife> bende iyiyim teşekkür ederim. ( 4. timer )


Bir çok identifier olduğundan dolayı her birisi üzerinde durma imkanım yoktu o yüzden bazılarının örneklendirmeler yaparak anlatmaya çalıştım. Aynı yöntemi kullanarak deneme yanılma yöntemi ile olayı daha iyi kavrayacağınızı düşünüyorum.

Time ve date eğitim konusunu bu şekilde bitireceğim. Umarım faydalı olmuştur. İyi forumlar dilerim.

Kaynak: mIRC ana klasör / mirc.html

__________________
I'm a dreamer but it's getting hard to take it.
Some nights don't know if i'm gonna make it.
Heart is heavy but there's nothing that can break me down.

Konu Mylife tarafından (23 Ocak 2025 Saat 15:14 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet reklamver
Cevapla

Etiketler
identifier, mirc, mirc scripting


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

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
mIRC Scripting & Redis SuLh mIRC Scripting Hazır Kodlar 3 11 Ekim 2024 16:05
DATE-TIME / TARİH ZAMAN TİPLERİ Kaf_Dağı MySQL 0 05 Mart 2016 20:38
format date time Kaf_Dağı Delphi 0 18 Mart 2015 14:05
mIRC Scripting By_GuRbey mIRC Scripting Sorunları 3 01 Ağustos 2008 18:57
$date ve $time .. hakkında soru.. Shpekoff mIRC Scripting Sorunları 3 01 Mart 2007 14:54