PHP सत्र में सरणियों को संग्रहीत करना
पिछले पाठ में बनाए गए कोड पर विचार करें:
<?php
if (!empty($_GET)) {
$_SESSION['num1'] = $_GET['num1'];
$_SESSION['num2'] = $_GET['num2'];
}
?>
वास्तव में, हम सीधे $_SESSION में
पूरा फॉर्म डेटा लिख सकते थे:
<?php
if (!empty($_GET)) {
$_SESSION = $_GET;
}
?>
और test2.php फ़ाइल में ऐसा करें:
<?php
if (!empty($_SESSION)) {
echo array_sum($_SESSION);
}
?>
इस दृष्टिकोण का लाभ यह है कि हमारा कोड फॉर्म में इनपुट्स की संख्या के बावजूद काम करेगा।
हालाँकि, एक कमी भी है: $_SESSION को
ओवरराइट करके, हम पहले से मौजूद सभी डेटा को
मिटा देते हैं। कौन जानता है कि हमारी दूसरी
स्क्रिप्ट ने वहाँ क्या लिखा था? और हम इसे
हटा देंगे।
चलिए एक अलग तरीके से करते हैं:
<?php
if (!empty($_GET)) {
$_SESSION['nums'] = $_GET;
}
?>
जैसा कि आप देख सकते हैं, हमने सत्र चर में
कोई एक मान नहीं, बल्कि एक पूरी सरणी लिखी है।
अब test2.php फ़ाइल में हम इस सरणी के
तत्वों का योग पा सकते हैं:
<?php
if (!empty($_SESSION)) {
echo array_sum($_SESSION['nums']);
}
?>
एक पेज पर, एक फॉर्म का उपयोग करके उपयोगकर्ता
से नाम, उम्र, वेतन और कुछ और पूछें। इन डेटा
को एक सत्र चर में एक सरणी के रूप में संग्रहीत
करें। दूसरे पेज पर जाने पर, सहेजे गए डेटा को
लूप के साथ पुनरावृत्त करें और प्रत्येक सरणी
तत्व को ul टैग के अपने li टैग
में प्रदर्शित करें।