Solusi sederhana untuk menangani error pada PHP script yang berbunyi: Notice: session_start(): A session had already been started - ignoring in …
PHP >= 5.4.0 || PHP 7 || PHP 8
Metode pertama adalah dengan menggunakan function session_status()
Function ini akan menghasilkan output sebagai berikut:
PHP_SESSION_DISABLED
if sessions are disabled.PHP_SESSION_NONE
if sessions are enabled, but none exists.PHP_SESSION_ACTIVE
if sessions are enabled, and one exists.
Untuk lebih jelasnya bisa lihat di sini.
Sehingga untuk mengatasi error Notice: session_start(): A session had already been started
bisa dengan cara memulai session setelah memeriksa status session, sebagai berikut:
if (session_status() == PHP_SESSION_NONE) {
session_start();
}
PHP < 5.4.0
Metode berikutnya lebih kompatible untuk versi PHP yang lebih lawas, yaitu dengan menggunakan function session_id()
.
Untuk lebih jelasnya bisa lihat di sini.
if(session_id() == '') {
session_start();
}