2011-12-10 21 views
9

C# .NET ve PHP ile çalışıyorum ve ikisi arasında standart bir kayıt süresine ihtiyacım var. 1970'lerden beri saniyeler kullanmak istiyorum = <?php echo time(); ?> çünkü projemde php'nin şu küçük işlevlerinden birini kullanıyorum: date() & strtotime(). PHP'de PHP zamanına eşdeğer bir şey var mı?C# .NET PHP zamanına eşdeğer()

Şimdiden teşekkürler. bu kadar

cevap

19
(int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds 
1

gibi basit:

var secondsSince1970 = DateTime.Now - DateTime.Parse("01.01.1970 00:00:00"); 
Debug.Write(secondsSince1970.TotalSeconds.ToString()); 
+0

Ben aşağı oyu yaptı ama kod çıkışları 0-60 –

+0

@PatrickLorio: Haklısın. Yanlış bir mal aldım. Örneği düzelttim. – Fischermaen

0

Sen DateTime yapıyı (veri türü) kullanabilir - Bir tarih ve saat temsil eder. Yerel saat almak için DateTime.Now ve DateTime.UtcNow (Coordinated UTC) özelliğini kullanabilirsiniz.

Zaman aralığı için Timespan yapısını kullanabilirsiniz.

2

O neden PHP time() için bir eşdeğer gerekir değil açık, ama bunu yapabilirsiniz:

var secondsSinceUnixEpoch = DateTime.UtcNow 
            .Subtract(new DateTime(1970, 1, 1)) 
            .TotalSeconds; 

// If needed. 
var roundedSeconds = (int) secondsSinceUnixEpoch;