PHPs strtotime ve verimlilik nedir (olan)?

0 Cevap php

I am doing some large timestamp-list iterations: Putting them in tables with date-ranges, and grouping them by ranges. In order to do that, I found strtotime() a very helpfull function, but I am worried about its performance.

Örneğin, haftalık bir listesini (diyelim ki 05 ile 49 hafta) üzerinde döngüler ve bir fonksiyon bu hafta sonu ve hafta damgası başlangıcı karar vermek zorundadır. Bunu yapmak için yararlı bir yol olacaktır:

foreach ($this->weeks($first, $amount) as $starts_at) {
  $ends_at = strtotime('+1 week', $starts_at);
  $groups[$week_key] = $this->slice($timestamps, $starts_at, $ends_at);
}

//$this->weeks returns a list of timestamps at which each week starts.
//$this->slice is a simple helper that returns only the timestamps within a range, from a list of timestamps. 

Yerine strtotime(), ben, potansiyel başlayacak ve hafta sonu arasındaki saniye miktarını bulabiliriz olurdu kez% 99 24 * 60 * 60 * 7. Ama DST anahtarı 24 dışarı sıralamak için 23 veya 25. Kod ya da olmalıdır ki, orada bu nadir durumlarda, muhtemelen, strtotime() çok yavaş o değil olacak?

Yıllardır aralıkları, ay (ay, çok tutarsız! Olmak), gün ve saat için aynı desen kullanın. Sadece saat ben sadece hızlı zaman damgası 3600 edilir ekleyerek şüpheli olur.

Başka yakaladım en? Tutarlı, DST için daha iyi yolları sunmak ve güvenli dateranges yıllık sıçrama yolları (ki PHP5.3 bağlı olmayan!) Var mı?

0 Cevap