Session  का use  information को temporary store करने के लिए जाता है। या हम कह सकते हैं कि Session user data को temporary store  करने का एक Alternative way है। Session में store data सभी pages पर accessible होता है , जिसे हम सभी pages पर access या modify कर सकते हैं। 

Starting PHP Session

PHP में Session start करने के लिए हम predefined function session_start() use किया जाता है। session_start() existing session return करता है यदि session already start हो चुका है , यदि session start नहीं हुआ है तो new session start कर देता है ।


session_start() हमेशा page के starting में ही call करना चाहिए। और अगर हमने session_start() call नहीं किया तो उस page पर हम Session data access नहीं कर सकते हैं।

When Session Starts First Time

  • जब पहली बार Session start होता है तो PHP particular Session के लिए  एक 32 Hexadecimal Number की Unique Session ID generate करता है।

  • इस Unique Session ID को store करने के लिए एक 'PHPSESSID' नाम की Cookie user browser पर automatically create कर दी जाती है। फिर इसी Unique Session ID का use existing session data को retrieve करने लिए किया जाता है।

  • फिर server पर एक temporary फाइल generate होती है जिसका नाम इसी Unique Session ID के आगे  sess_  prepend कर दिया जाता है।


PHP $_SESSION To Access Session Data

PHP में $_SESSION Super Global Variable का use Session data को retrieve करने के लिए करते हैं। जब अभी हम Session में data रखते हैं तो $_SESSION एक Associative Array create करता है जिसमे key => value pair में data को store होता है।

PHP Session Example

File : test_session.php

Copy Fullscreen Close Fullscreen
<?php
  session_start();
  if(isset($_SESSION['num']))
    $_SESSION['num'] +=1; 
  else
    $_SESSION['num'] = 1;

  echo 'You have visited this page : '. $_SESSION['num'] .' times';

?>
Output
PHP Session Image

ऊपर दिए गए Example में आप clear देख सकते हैं कि जैसे ही Session Start हुआ वैसे ही browser में 'PHPSESSID' नाम की Cookie create हो गयी।

Destroying PHP Session

PHP में Session को destroy / finish करने के लिए हम predefined function session_unset() और session_destroy() use करते हैं। session_unset() function पूरी तरह से Current Session Variables को unset / remove करता है। जबकि session_destroy() Current Session finish करता है। और अगर आपको सिर्फ particular variable को Session से remove करना हो तो हम unset() function का use करते हैं।

See Example

File : test_session2.php

Copy Fullscreen Close Fullscreen
<?php
  session_start();
$_SESSION['session_start'] = date('h:i:s a');
$_SESSION['userid'] = 'unique_user_hash_id';
$_SESSION['user_email'] = 'user@gmail.com';

echo 'Session Data : <pre>';
print_r($_SESSION);
echo '</pre>';

/*now remove one value*/
unset($_SESSION['user_email']);
echo 'After remove user_email : <pre>';
print_r($_SESSION);

/* now completely finish session */
session_unset(); /* remove all session variables */
session_destroy(); /* destroy session*/
echo 'After Finish Session : ';
print_r($_SESSION); ?>
Output
Session Data :
Array
(
    [session_start] => 09:10:58 am
    [userid] => unique_user_hash_id
    [user_email] => user@gmail.com
)
After remove user_email :
Array
(
    [session_start] => 09:10:58 am
    [userid] => unique_user_hash_id
)
After Finish Session : Array
(
)

I hope अब आप अच्छी तरह से समझ गए होंगे कि PHP में Session को किस तरह से use करते हैं।

Related Topics :

Rahul Kumar

Rahul Kumar

Hi ! I'm Rahul Kumar Rajput founder of learnhindituts.com. I'm a software developer having more than 4 years of experience. I love to talk about programming as well as writing technical tutorials and blogs that can help to others. I'm here to help you navigate the coding cosmos and turn your ideas into reality, keep coding, keep learning :)

Get connected with me. :) LinkedIn Twitter Instagram Facebook

b2eprogrammers