date klasa v0.0.4
1 Prilog(a)
Evo napravio sam jednu klasu za baratanje sa datumima koja omogućuje da dobijemo na izlazu datum i vreme prilagođeni našem podneblju.
Fajl je u prilogu. Probajte. |
$nasDatum = date("d.m.Y.", $timestamp); ? :)
Btw: Citat:
|
Citat:
|
godza@
- Oliver odgovara oliveru78. oliver@ - Datum je u obliku "20. septembar 2005.", a jednostavno se dodaju funkcije koje su potrebne. - Pomocu privatnog podatka $timezone lako se pomera vremenska zona u kojoj se server nalazi. - Juce sam uploadovao novu verziju bloga koja radi sa vecom tablom za clanke tako da sam morao da brisem predhodne postove. Inace blog je u fazi priprema. - Ako imas nekog predloga za neku korisnu f-ju koja bi mogla da se doda u klasi javi na e-mail. |
Ili oliveri to mozete da napisete ovde. :)
|
Glupi RAR. Ajd kad kačite nešto kačite ga u nekom od standardnih formata (ZIP, TGZ).
|
1 Prilog(a)
Evo i zip foramta.
Povremeno (kad nesto izmenim) dodaću na http://oliver78.freestarthost.com/blog/index.php. |
1 Prilog(a)
PHP Klasa 'date v0.0.5'
Sređena je dokumentacija i primeri (4 primera) koji ukratko prikazuju način korišćenja klase. Molim za sugestije kritike, predloge. |
1 Prilog(a)
Evo doradjene klase.
Sada se moze birati izmedju yyyyddmmHHiiss formata i yyyy-DD-mm HH:ii:ss u skladu sa potrebama za MySQL 4.1.14. |
dodaj:
- mogucnost da se default format datuma i vremena mogu podesiti - mogucnost da se datum i vreme mogu dobiti preko funkcije koja kao parametar prima formatiranje - mogucnost da se podesi koja je sistemska vrmenska zona (na serveru na kome se skript izvrsava) i lokalna vremenska zona (ona u kojoj je posetilac sajta) - mogucnost da klasa sama detektuje vremensku zonu posetioca - podrska za automatsko korigovanje vremena kod pomeranja sata - malo je neprakticno da se za svaku operaciju nad nekim novim datumom mora kreirati klasa. Bolje bi bilo da se klasa kreira jednom, a da se pozivima medota mogu raditi obrade datuma i vremena po potrebi. Drugim recima, izbaci setovanje datuma u kreiranju klase, a dodaj zasebnu funkciju za tu namenu - dodaj metode GetCurrentDateTime/GetCurrentTime kao i GetLocalDateTime/GetLocalTime i ssytemToLocalDateTime/SystemToLocalTime i slicno. |
Hvala na iscrpnim sugestijama.
Samo da proverim da li sam dobro razumeo. Ako nisam, molim te ispravi me. 1. mogucnost da se default format datuma i vremena mogu podesiti Umesto konstruktora, koristiti podrazumevani konstruktor, a lokalne promenjive setovati pomocu SET metoda. 2. mogucnost da se datum i vreme mogu dobiti preko funkcije koja kao parametar prima formatiranje. Umesto zadavanje globalne promenjive _VERSION koristiti lokalnu promenjivu koja se moze setovati pomocu SET metode. 3. mogucnost da se podesi koja je sistemska vrmenska zona (na serveru na kome se skript izvrsava) i lokalna vremenska zona (ona u kojoj je posetilac sajta) Uvesti 2 lokalne promenjive za sistemsku zonu servera i lokalnu zonu posetioca tako da se moze izracunati vremenska razlika. 4. mogucnost da klasa sama detektuje vremensku zonu posetioca Automatizovati setovanje predhodne dve promenjive. 5. podrska za automatsko korigovanje vremena kod pomeranja sata Hmmm.... Podatke o vremenu citam iz baze ili iz racunara (koji vodi racuna o pomeranju sata). Neznam na sta se odnosi. 6. malo je neprakticno da se za svaku operaciju nad nekim novim datumom mora kreirati klasa. Bolje bi bilo da se klasa kreira jednom, a da se pozivima medota mogu raditi obrade datuma i vremena po potrebi. Drugim recima, izbaci setovanje datuma u kreiranju klase, a dodaj zasebnu funkciju za tu namenu Trenutni konstruktor preraditi kao posebnu funkciju, uvesti podrazumevani konstruktor i set metode. 7. dodaj metode GetCurrentDateTime/GetCurrentTime kao i GetLocalDateTime/GetLocalTime i SytemToLocalDateTime/SystemToLocalTime Dodavanje funkcija koje vracaju trenutno vreme. SystemToLocal? Sta bi ova trebalo da radi? +8 Da li je zgodno uvesti funkciju reset koja vraca sve promenjive na default (npr. 0 ili nesto tako). Iz sledeceg razloga: ako se pozove jednom funkcija i setuju metode, da se pre ponovnog koriscenja resetuju vrednosti, da ne bi nesto ostalo iz predhodnog setovanja. Mada mi ne zvuci... ili... hmmm... Dodati funkcije koje vracaju trenutno vreme. Ne razumem na sta se odnose SystemToLocalDateTime. Da li na izracunavanje vremenske razlike izmedju servera i klijenta? Hvala, jos jednom. |
Citat:
Citat:
Citat:
Postmaraj problem iz ovog ugla: sajt ti se nalazi na hsotu u USA a korisnik koji dolazi na sajt je iz Srbije. Korinik iz Srbije ocekuje datum i vreme za svoju tekucu vremensku zonu (ukljucujuci i DaylightSavingTime). Ako isti sajt poseti neko iz Japana, on opet ocekuje da vidi svoje lokalno vreme. Probaj da u klasuubasis to vise mehanizama koja pojednostavljuju baratanje sa datumom i vremenom u ovakvim situacijama. |
date klasa v0.1.2
1 Prilog(a)
Vrsi se automatsko setovanje formata u yavisnosti od duzine timestampa. Naravno moye se dodatno i sprovesti ispravnost kompletnog formata. Kako za ceo timestamp tako i za svaku stavku posebno.
0 - yyyymmddHHiiss 1 - yyyy-mm-dd HH:ii:ss Do potrebe za ovim dodatkom je došlo iz razloga što je format pod brojem 1, format za timstamp polja u MySQL bazi od verzije 4.1.14. Podrazumevani konstruktor vraca trenutno vreme, timezona je 0 i format j 0. Sve do setovanja nekog drugog datuma u timestamp formatu. Takođe je dosta promenjena struktura baze i nije kompatibilna sa predhodnom verzijom klase. Nove funkcije su: SetServerTimeZone(), SetFormat(), MakeTime()... Ima i par primera. Da li je ovakva struktura dobra za lakse doradjivanje? Teznja za kasnijom implemetacijim predlozenih metoda u ranijim postovima. |
Preimenuj klasu u nesto drugo, recimo opDate. Naziv Date je mislim rezervisana rec a svejedno moze da pravi zabunu jer je opsti pojam.
Svojstva... var $mTimeStamp; var $mYear; var $mMonth; var $mDay; var $mHour; var $mMinute; var $mSecond; ...su ti nepotrebna. Napravi medote koji su funkcije da vracaju trazenu vrednost, a ne da pune ova svojstva. Tako ce moci da budu upotrebljena prirodno kao na primer $myear = date->GetYear(); |
Da, jasno.
Za razliku od predhodnih verzija, ovde se moze setovati timestamp, a da se posle vracaju potrebni podaci. Dakle da li onda ostaviti var $mTimeStamp; // ovu ovde var $mTimeZone; var $mFormat; |
Vreme je GMT +2. Trenutno vreme je 18:28. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.