2011-11-07 14 views
6

PHP में मैं ग्लोबल और ग्लोबल्स के बीच अंतर जानना चाहता हूं।ग्लोबल और ग्लोबल के बीच क्या अंतर है?

कुछ उदाहरण:

print_r($GLOBALS); 
+0

'$ GLOBALS' एक सरणी, है' global' एक PHP कीवर्ड है। वे अनिवार्य रूप से एक ही काम करते हैं लेकिन एक अलग तरीके से –

+0

लेकिन हम $ ग्लोबल का उपयोग करके सत्र और कुकी चर का उपयोग क्यों नहीं कर सकते? मैं उन चरों तक पहुंच सकता हूं जिन्हें मैंने $ ग्लोबल का उपयोग करके बनाया है। – balaphp

+3

क्योंकि यह नहीं है कि $ ग्लोबल्स क्या है। $ ग्लोबल वैश्विक दायरे में परिभाषित चर के लिए है, और कम नहीं। यह वैसा ही है जैसा होना चाहिए। –

उत्तर

13

कि दो अलग अलग ही से संबंधित बातें हैं उपयोग करने के लिए है: वैश्विक चर।

$GLOBALS - PHP superglobal सरणी सरणी के रूप में सुलभ वैश्विक चर तालिका का प्रतिनिधित्व करती है। क्योंकि यह एक superglobal है, यह हर जगह उपलब्ध है।

एक सहयोगी सरणी जिसमें सभी चर के संदर्भ शामिल हैं जो वर्तमान में स्क्रिप्ट के वैश्विक दायरे में परिभाषित हैं। परिवर्तनीय नाम सरणी की चाबियाँ हैं।

global - स्थानीय चर तालिका में एक विशिष्ट वैश्विक चर आयात करने के लिए कीवर्ड।


तो फिर तुम से पूछा:

लेकिन कारण है कि हम नहीं कर सकते $GLOBALS का उपयोग करके सत्र और कुकी चर का उपयोग? साथ ही

$GLOBALS['_SESSION']['session_variable_name'] 
हालांकि

$_SESSION है एक superglobal है, तो आप या तो $GLOBALS और न ही global सत्र तक पहुँचने के लिए उपयोग करने की आवश्यकता नहीं है:

यह गलत है, तो आप सत्र और कुकी चर $GLOBALS का उपयोग करके उपयोग कर सकते हैं हर जगह से चर:

$_SESSION['session_variable_name'] 

उसी पर $_COOKIE पर लागू होता है।

2

$ वैश्विक एक सरणी है और वैश्विक एक कीवर्ड की घोषणा या वैश्विक चर

2

वे दो अलग-अलग चीजें हैं।

globalकीवर्ड है जो बताता है कि चर वैश्विक स्तर से है। जैसे यदि आप बाहर परिभाषित किए गए फ़ंक्शन के अंदर एक चर का उपयोग करने वाले हैं, तो आपको फ़ंक्शन में इसे सुलभ बनाने के लिए वैश्विक कीवर्ड का उपयोग करने की आवश्यकता होगी।

$GLOBALSsuperglobal सरणी है। सुपरग्लोबल का मतलब है कि यह वैश्विक कीवर्ड का उपयोग किए बिना किसी स्क्रिप्ट में सभी क्षेत्रों में उपलब्ध है।

1

$ ग्लोबल: सभी चरों के संदर्भ वाले एक सहयोगी सरणी जो वर्तमान में स्क्रिप्ट के वैश्विक दायरे में परिभाषित हैं। परिवर्तनीय नाम सरणी की कुंजी हैं

ग्लोबल/वैश्विक एक परिवर्तनीय वैश्विक सेट करने के लिए एक कीवर्ड है।

संदर्भ:

http://php.net/GLOBALS

http://php.net/global

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