What are the best practices for setting up session parameters in PHP to ensure session persistence and security?

To ensure session persistence and security in PHP, it is important to set certain parameters when starting a session. This includes setting the session cookie parameters to secure and HttpOnly, using a strong session id generator, and setting the session timeout appropriately.

// Start the session with custom parameters
session_set_cookie_params([
    'lifetime' => 0,
    'path' => '/',
    'domain' => 'example.com',
    'secure' => true,
    'httponly' => true
]);
session_start();

// Set a strong session id generator
ini_set('session.sid_length', 64);

// Set the session timeout
ini_set('session.gc_maxlifetime', 3600);