Symfony 2 में, इस लाइन का मतलब क्या है:सिम्फनी 2 में, DateTime का क्या अर्थ है?
$task->setDueDate(new \DateTime('tomorrow'));
क्या \DateTime
दर्शाता है? क्या इसे कहीं से भी पहुंचा जा सकता है?
Symfony 2 में, इस लाइन का मतलब क्या है:सिम्फनी 2 में, DateTime का क्या अर्थ है?
$task->setDueDate(new \DateTime('tomorrow'));
क्या \DateTime
दर्शाता है? क्या इसे कहीं से भी पहुंचा जा सकता है?
पहले एक छोटा एफवाईआई, सिम्फनी के साथ इसका कोई संबंध नहीं है - ऐसा होता है कि सिम्फनी 2 namespaces का उपयोग करता है।
नामस्थानों का उपयोग नहीं करते समय, datetime class हमेशा new DateTime()
के माध्यम से उपलब्ध है - ऐसा इसलिए है क्योंकि आप पहले से ही "रूट" नामस्थान में हैं। हालांकि, जब आप नेमस्पेस का उपयोग कर रहे हैं, तो बस new DateTime()
का उपयोग न करें क्योंकि यह वर्तमान नामस्थान में उस कक्षा की तलाश करेगा। उदाहरण:
<?php
namespace MyApp\Component;
class Something
{
function __construct()
{
$dt = new DateTime();
}
}
यह एक त्रुटि (जैसे Class 'MyApp\Component\DateTime' not found in ...
) का कारण होगा क्योंकि दिनांक समय नामित MyApp\Component
नाम स्थान के भीतर कोई वर्ग है वहाँ।
यही कारण है कि आपको \DateTime()
मिला, यह दुभाषिया को DateTime
वर्ग के लिए "रूट" (?) नामस्थान में देखने के लिए कह रहा है। अपनी स्क्रिप्ट के शीर्ष कैसा लगेगा - -
तुम भी DateTime
वर्ग आयात करने के लिए use
कीवर्ड का उपयोग कर सकते तुम सिर्फ new DateTime()
कॉल करने के लिए अनुमति देता है: के रूप में अन्य ने कहा कि
<?php
namespace MyApp\Component;
use \DateTime;
\ DateTime एक नामांकित दिनांक समय कक्षा है। शायद उस फ़ाइल के शीर्ष पर कहीं भी है जिसे आप देख रहे हैं जिसका उपयोग \ X \ X मंदी है। \ दिनांक समय कहीं भी सुलभ आप उपयोग घोषणा कर सकते हैं \ X \ एक्स
देखें http://www.php.net/manual/en/language.namespaces.global.php
तुम भी फ़ाइल के शीर्ष पर एक namespace X\Y;
देखना चाहिए होना चाहिए, \DateTime
मतलब यह है कि वर्ग DateTime
वैश्विक से लिया जा रहा है X\Y
के बजाय नामस्थान।
i.e this DateTime।
, यह ग्लोबल नेम स्पेस को संदर्भित , और दिनांक समय php में एकीकृत है, यहाँ देखो: http://www.php.net/manual/en/class.datetime.php ताकि आप इसे सिम्फोनी में न केवल उपयोग कर सकते हैं;)
बहुत बढ़िया! धन्यवाद .. –
आप अपनी कक्षा में 'डेटटाइम का उपयोग' भी जोड़ सकते हैं, फिर बस 'नया डेटटाइम()', इस प्रकार आप नाम के लिए नामित कक्षाओं को दूसरों के उपयोग के लिए तैयार करते हैं। – catchamonkey
@catchamonkey सच। मैं इसे उत्तर में जोड़ दूंगा। – Prisoner