Использование timestamp ...
<?php
if (!isset($_SESSION)) {
$session = session_start();
}
if ($session && !isset($_SESSION['login_time'])) {
if ($session == 1) {
$_SESSION['login_time']=time();
echo "Login :".$_SESSION['login_time'];
echo "<br>";
$_SESSION['idle_time']=$_SESSION['login_time']+20;
echo "Session Idle :".$_SESSION['idle_time'];
echo "<br>";
} else{
$_SESSION['login_time']="";
}
} else {
if (time()>$_SESSION['idle_time']){
echo "Session Idle :".$_SESSION['idle_time'];
echo "<br>";
echo "Current :".time();
echo "<br>";
echo "Session Time Out";
session_destroy();
session_unset();
} else {
echo "Logged In<br>";
}
}
?>
Я использовал 20 секунд для истечения сеанса с использованием метки времени.
Если вам нужно 30 минут добавить 1800 (30 минут в секундах) ...
Вы можете проверить любой источник метода lodash
, перейдя на https://lodash.com & amp; нажав Источник
Например, перейдите на https://lodash.com/docs/4.17.11#differenceBy
Вы можете использовать filter
и some
вот так
const toto = [{a:1,b:2,c:1},{a:7,c:2,d:1}]
const titi = [{a:2,b:2,c:1},{a:1,c:2,d:1}]
function differenceBy(array1, array2, key) {
return array1.filter(a => !array2.some(b => b[key] === a[key]))
}
console.log(differenceBy(toto, titi, "a"))
Возвращает все элементы в array1
, которых нет в array2
:
{
"a": 7,
"c": 2,
"d": 1
}