PHP - función session_start ()
Definición y uso
Las sesiones o el manejo de sesiones es una forma de hacer que los datos estén disponibles en varias páginas de una aplicación web. lossession_start() La función se utiliza para iniciar una nueva sesión o reanudar una existente.
Sintaxis
session_start([$options]);
Parámetros
No Señor | Descripción de parámetros |
---|---|
1 | array(Optional) Esta es una matriz que representa un conjunto de opciones de sesión. |
Valores devueltos
Esta función devuelve un valor booleano que es VERDADERO si la sesión se inició correctamente y FALSO si no tuvo éxito.
Versión PHP
Esta función se introdujo por primera vez en PHP Versión 4 y funciona en todas las versiones posteriores.
Ejemplo 1
El siguiente ejemplo demuestra el uso de session_start() función.
<?php
//Starting the session
session_start();
if( isset( $_SESSION['counter'] ) ) {
$_SESSION['counter'] += 1;
} else {
$_SESSION['counter'] = 1;
}
$msg = "You have visited this page ". $_SESSION['counter'];
$msg .= "in this session.";
?>
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php echo ( $msg ); ?>
</body>
</html>
Al ejecutar el archivo html anterior, se mostrará el siguiente mensaje:
You have visited this page 1 times in this session.
El número en el mensaje cambia constantemente según la cantidad de veces que actualiza la página sin cerrar el navegador. Por ejemplo, si actualiza 10 veces, la misma página muestra el siguiente mensaje.
You have visited this page 16 times in this session.
Ejemplo 2
A continuación se muestra otro ejemplo de esta función, aquí tenemos dos páginas de la misma aplicación en la misma sesión:
session_page1.htm
<?php
if(isset($_POST['SubmitButton'])){
//Starting the session
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?> <label for="fname"?>Name:</label>
<input type="text" id="name" name="name"><br><br>
<label for="lname"?>Age:
<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>
Esto producirá el siguiente resultado:
Al hacer clic en Next se ejecuta el siguiente archivo.
session_page2.htm
<html>
<head>
<title>Second Page</title>
</head>
<body>
<?php
//Session started
session_start();
print($_SESSION['name']);
echo "<br>";
print($_SESSION['age']);
?>
</body>
</html>
Esto producirá el siguiente resultado:
Krishna
30
Ejemplo 3
Puede pasar una matriz opcional a esta función como se muestra a continuación:
<html>
<head>
<title>Setting up a PHP session</title>
</head>
<body>
<?php
//Starting the session
$options = ['cookie_lifetime' => 86400,'read_and_close' => true];
session_start($options);
?>
</body>
</html>