{"id":87,"date":"2008-01-17T14:29:12","date_gmt":"2008-01-17T13:29:12","guid":{"rendered":"http:\/\/vince.tikasz.hu\/2008\/01\/17\/excel-datum-atalakitasa-unix-idobelyegge\/"},"modified":"2010-08-14T08:56:50","modified_gmt":"2010-08-14T06:56:50","slug":"excel-datum-atalakitasa-unix-idobelyegge","status":"publish","type":"post","link":"https:\/\/vince.tikasz.hu\/2008\/01\/17\/excel-datum-atalakitasa-unix-idobelyegge\/","title":{"rendered":"Excel d\u00e1tum \u00e1talak\u00edt\u00e1sa UNIX id\u0151b\u00e9lyegg\u00e9"},"content":{"rendered":"
Egy f\u00e9l napom r\u00e1ment, de nem j\u00f6ttem r\u00e1, hogyan is kell PHP-ban haszn\u00e1lhat\u00f3 (UNIX timestamp) form\u00e1tumra hozni az Excel d\u00e1tumait. Azt eg\u00e9sz hamar siker\u00fclt kider\u00edteni, hogy a t\u00e1rolt sz\u00e1mok eg\u00e9sz \u00e9rt\u00e9kei az 1900. janu\u00e1r 1. \u00f3ta eltelt napok sz\u00e1m\u00e1t tartalmazz\u00e1k, b\u00e1r m\u00e9g ezt sem siker\u00fcl pontosan implement\u00e1lni, ugyanis van valami kavar a sz\u00f6k\u0151\u00e9vekkel. A t\u00f6rtr\u00e9sz pedig az id\u0151pontot \u00edrja le (0.25 = 6:00, 0.5=12:00, stb). Ak\u00e1r hogy pr\u00f3b\u00e1ltam visszaalak\u00edtani m\u00e1sodpercekre, volt egy-k\u00e9t \u00e9ves cs\u00fasz\u00e1s az eredm\u00e9nyben. Azt\u00e1n v\u00e9letlen\u00fcl r\u00e1bukkantam egy egyszer\u0171, PHP-ban \u00edrt f\u00fcggv\u00e9nyre<\/a> (Ray Hauge neve szerepel mellette; Ez\u00faton is k\u00f6sz\u00f6n\u00f6m neki), ami szoroz, oszt, \u00e9s a j\u00f3 id\u0151pontot k\u00f6pi ki:<\/p>\n OpenOffice is kicsit m\u00e1sk\u00e9nt csin\u00e1lja:<\/p>\n Egy f\u00e9l napom r\u00e1ment, de nem j\u00f6ttem r\u00e1, hogyan is kell PHP-ban haszn\u00e1lhat\u00f3 (UNIX timestamp) form\u00e1tumra hozni az Excel d\u00e1tumait. Azt eg\u00e9sz hamar siker\u00fclt kider\u00edteni, hogy a t\u00e1rolt sz\u00e1mok eg\u00e9sz \u00e9rt\u00e9kei az 1900. janu\u00e1r 1. \u00f3ta eltelt napok sz\u00e1m\u00e1t tartalmazz\u00e1k, … Continue reading \r\nfunction ExcelToDate($inVar) {\r\n return date(\"m\/d\/Y\",(($inVar - 25569)*86400)-7200);\r\n}\r\n<\/pre>\n
\r\nfunction OOToDate($inVar) {\r\n return date(\"m\/d\/Y\",(($inVar - 25568)*86400)-7200);\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"