2013-12-17 9 views
6

उदाहरण के लिए, निम्नलिखित प्रोग्राम सार्थक है, और यदि ऐसा है तो इसे प्रिंट करना चाहिए?PHP कीवर्ड केस-संवेदी हैं?

<?php 
FuncTIon fOo($x) { eChO $x; } 
FOO('bar'); 
IF (TRuE) { echO 'qux'; } 
?> 

मेरे दुभाषिया यह और प्रिंट barqux चलाता है, जिसका अर्थ कीवर्ड नहीं केस-संवेदी होते:

$ php case_sensitive_keywords.php 
barqux 
$ php --version 
PHP 5.5.7-1+sury.org~precise+1 (cli) (built: Dec 12 2013 21:37:40) 

हालांकि, this same question was asked last year, और जवाब का कहना है कि कीवर्ड केस-संवेदी होते, मेरे PHP दुभाषिया ने मुझे क्या बताने के लिए प्रत्यक्ष विरोधाभास में!

+0

@JohnConde यह वास्तव में डुप्लिकेट है? यह सवाल कार्यों के बारे में था, यह कीवर्ड के बारे में पूछता है। और नीचे दिया गया उत्तर सभी भाषा तत्वों का विवरण देने से ऊपर और परे चला जाता है। – Barmar

+0

मुझे लगता है कि सवाल केवल इसलिए बंद कर दिया गया था क्योंकि यह एक मूर्ख सवाल था (जैसा कि आपने किया था, आप आसानी से इसका प्रयोग कर सकते हैं), और "रचनात्मक नहीं" निकटतम उपलब्ध कारण था। ऐसा नहीं है कि PHP के कार्यान्वयन से अलग आधिकारिक विनिर्देशन है; केवल एक कार्यान्वयन है, और भाषा जो कुछ भी कार्यान्वयन करता है। – Barmar

+0

@jameshfisher [मेटा] विशिष्ट प्रश्नों और बंदियों के बारे में चर्चा करने का स्थान है। मैंने आपके प्रश्नों से आपकी टिप्पणियां संपादित की हैं। मैं यह भी सुझाव दूंगा कि आप अपनी टिप्पणियों और प्रश्नों में शपथ ग्रहण करने से बचें, क्योंकि उन्हें हटाया जा सकता है। –

उत्तर

15

केस संवेदनशील (दोनों उपयोगकर्ता परिभाषित और PHP परिभाषित)

  • चर
  • स्थिरांक
  • सरणी कुंजी
  • वर्ग गुण
  • वर्ग स्थिरांक

मामले असंवेदनशील (दोनों उपयोगकर्ता परिभाषित और PHP परिभाषित)

  • कार्यों
  • वर्ग कंस्ट्रक्टर्स
  • वर्ग तरीकों
  • कीवर्ड और निर्माणों (यदि, और, अशक्त, foreach, गूंज आदि)
+0

यह कमाल है! स्पष्टीकरण के लिए धन्यवाद ... – manou

2

सं कीवर्ड केस-संवेदी होती हैं ।Lerdorf et al., Programming PHP, पेज 17:

उपयोगकर्ता परिभाषित वर्गों और कार्यों के नाम है, साथ ही में निर्मित निर्माणों और इस तरह के echo, while, class, आदि के रूप कीवर्ड के रूप में, कर रहे हैं केस-संवेदी । इस प्रकार, इन तीन लाइनों के बराबर हैं:

echo("hello, world"); 
ECHO("hello, world"); 
EcHo("hello, world"); 
+0

क्या यह नामस्थानों पर भी लागू होता है? मेरा मतलब है, 'एनस्प्रेस \ सबनामस्पेस \ सबसब नामस्थान' और 'nspace \ subnamespace \ subsubNamespace' और 'NSpace \ SuBNameSpacE \ SUBsuBNamesPACE' समकक्ष नामस्थान हैं? – tonix

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