आज मैं पीएचपी DateTime क्लास का प्रयोग कर रहा था। तब उसमें(पीएचपी में) एक गड़बड़ी का पता चला।
मान लीजिए कि हम इस प्रकार का कोड लिखते हैं:
$date = new DateTime(’01 December, 1950′);
echo $date->format(‘Y-m-d’);
तो इसका परिणाम आएगा
2010-12-01
यानि कि हमने वर्ष भरा है १९५०, लेकिन परिणाम में वर्ष आ रहा है २०१०। यह गड़बड़ १९६० से पहले के वर्षों में होती है और उनका सही वर्ष नही आता है।
यदि हम इस दिनांक को इस प्रकार लिख दें
$date = new DateTime(‘December 01, 1950’);
echo $date->format(‘Y-m-d’);
तो परिणाम एकदम सही यानि कि 1950-12-01 आया।
संभवत: इसका कारण पीएचपी की कोई त्रुटि है। इसके विषय में मुझे स्टाक ओवर फ्लो में पता चला।
http://stackoverflow.com/questions/4430478/php-datetime-object-1960-year-limitation
यह गड़बड़ी मेरे पीएचपी के संस्करण 5.2.14 मे आई। संभवत: नए संस्करणों में ये समस्या नही आएगी।
यदि आपको भी इस समस्या का सामना करना पड़ा हो तो कृपया ऊपर वाला समधान उपयोग में लाकर देखें।