• PHP Video Tutorials

PHP - session_cache_limiter() Function



Definition and Usage

Sessions or session handling is a way to make the data available across various pages of a web application. The HTTP headers determine how the page content might be cached by the client. You can define cache control HTTP header that are sent to be sent to the client using the cache limiter.

The session_cache_limiter() function is used to get or, set the cache limiter of the current session.

Syntax

session_cache_limiter([$cache_limiter]);

Parameters

Sr.No Parameter & Description
1

cache_limiter (Optional)

This is a string value representing the type of cache limiter which can be one of the following −

  • public
  • private_no_expire
  • private
  • nocache

Return Values

This function returns an integer value representing the created session id.

PHP Version

This function was first introduced in PHP Version 4 and works in all the later versions.

Example 1

Following example demonstrates the usage of the session_cache_limiter() function.

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  	
         //Retrieving the cache limiter
         $limiter = session_cache_limiter();
         print("Cache limiter: ".$limiter);
      ?>
   </body>   
</html>   

One executing the above html file it will display the following message −

Cache limiter: nocache

Example 2

Following is another example of this function, in here we have two pages from the same application in the same session.

session_page1.htm

<?php
   if(isset($_POST['SubmitButton'])){ 
      //Setting the cache limiter
      session_cache_limiter('public');
      session_start();
      $_SESSION['name'] = $_POST['name'];
      $_SESSION['age']  = $_POST['age']; 
   }
?>
<html>
   <body>
      <form action="#" method="post">
         <br>
         <label for="fname">Enter the values click Submit and click on Next</label>
         <br><br><label for="fname">Name:</label>
         <input type="text" id="name" name="name"><br><br>
         <label for="lname">Age:</label>
         <input type="text" id="age" name="age"><br><br>           
         <input type="submit" name="SubmitButton"/>
         <?php echo '<br><br /><a href="session_page2.htm">Next</a>'; ?>
      </form>
   </body>
</html>

This will produce the following output −

Session Start

On clicking on Next the following file is executed.

session_page2.htm

<html>   
   <head>
      <title>Second Page</title>
   </head>
   <body>
      <?php
         //Session started
         session_start();	
         //Retrieving the cache limiter
         $limiter = session_cache_limiter();
         print("Cache limiter: ".$limiter);
         echo "<br>";	  
         print_r($_SESSION);
      ?>   
   </body>   
</html>

This will produce the following output −

Cache limiter: nocache
Array ( [name] => krishna [age] => 30 )

Example 3

You can set the cache limiter using this function as shown below −

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  	
         //Setting the cache limiter
         session_cache_limiter('public');
         //Retrieving the cache limiter
         $limiter = session_cache_limiter();
         print("Cache limiter: ".$limiter);
      ?>
   </body>   
</html>

One executing the above html file it will display the following message −

Cache limiter: public 
php_function_reference.htm
Advertisements