2010-10-25 9 views
8

गूंजने के लिए कैसे उम्मीद है कि शीर्षक बहुत गुप्त नहीं है। मेरे पास एक DATETIME ऑब्जेक्ट के साथ एक सरणी है और मैं यह समझने की कोशिश कर रहा हूं कि इसे किसी पृष्ठ पर कैसे गूंजना है।PHP: ऑब्जेक्ट के रूप में सरणी में DATETIME।

["created"]=> object(DateTime)#3 (3) { ["date"]=> string(19) "2010-10-22 00:00:00" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/London" 

क्या कोई मेरी मदद कर सकता है?

की कोशिश की तिथि(), लेकिन मिलती है:

Warning: date() expects parameter 2 to be long, object given in C:\ 

किसी भी मदद के सबसे सराहना की,

Jonesy

उत्तर

8

DateTime::format() का उपयोग करें। मास्क सिंटैक्स date() के समान है।

echo $value->format('Y-m-d H:i:s'); 
1

यदि यह एक वास्तविक PHP5 है DateTime वस्तु तो आप format विधि प्रतिध्वनित करने के लिए उपयोग कर सकते हैं यह

$myDate = $myArray['created']; 
echo $myDate->format('Y-m-d H:i:s'); 
0

मैं इस सवाल का जवाब भले ही मुझे यकीन है कि नहीं कर रहा हूँ जोड़ने यह विशेष रूप से सवाल का जवाब (और सबसे अच्छा जवाब हालांकि पहले से ही है), लेकिन मुझे अन्य स्थानों को नहीं मिला जहां उपर्युक्त प्रारूप (date/timezone_type/timezone) का उल्लेख है।

आप var_export

DateTime::__set_state(array( 'date' => '2017-12-05 11:58:25.428595', 'timezone_type' => 3, 'timezone' => 'US/Pacific', ))

  • या json_encode

के माध्यम से तारीख वस्तु से सरणी

  • में अनुवाद किया है, तो

    आप उपयोग कर सकते हैं फिर से DateTime::__set_state जादू विधि के लिए उपर्युक्त यह एक दिनांक समय वस्तु के लिए फिर से परिवर्तित करते हैं।

    यह सुनिश्चित नहीं है कि __set_state बिडरेक्शनल कैसे हो सकता है, लेकिन यह जादू करता है। मुझे प्रलेखन नहीं मिला।

    लेकिन आप इसे यहाँ का परीक्षण कर सकते हैं: http://sandbox.onlinephpfunctions.com/code/0a18e6937e7d4373beb91713f2e6e5f75f9af3e2

संबंधित मुद्दे