Сначала вы должны использовать time()
вместо mktime()
, потому что вы все равно не конвертируете компоненты даты и времени.
А затем вам следует переписать условие в нечто большеедля чтения:
if ( time() > $_SESSION['started'] + 60*30 ) {
В зависимости от вашего варианта использования вы также можете подумать о том, чтобы не использовать время запуска, но, возможно, использовать lastaccess, например.(Вы также можете заранее определить время «уничтожения» при создании сеанса, что упростит логику.)