В нашем приложении мы используем эту схему:
Логин Я перепрыгну (что ты сделал)
Когда пользователь выходит из нашего приложения, он вызывает URL, который считается выходом из системы. Например: http://ourcoresyste.com/logout.php
Приносим извинения за неудобства, но я не являюсь разработчиком iOS, поэтому я не знаю точно, как приложение выполняет вызов, но я думаю, что вы должны это знать, если вход выполнен.
В скрипте logout.php:
<?php
if (!isset($_SESSION))
{
exit(json_encode(array('code' => 0, 'message' => 'Logout successful')));
}
esle
{
$user = $_SESSION['user_id']; // suppose you have stored into $_SESSION['user_id'] logged in user;
// Do some stuff while logout, maybe some DB interactions.
if ($shit_happens)
{
exit(json_encode(array('code' => 1, 'message' => 'Shit happens')));
}
unset($_SESSION['user_id']); // or session_destroy(), if you want completly remove all information about user.
exit(json_encode(array('code' => 0, 'message' => 'Logout successful')));
}
Чем в вашем приложении вы анализируете ответ JSON, который будет выглядеть так:
{"code":0,"message":"Your detailed message"}
И решить по коду, полученному из ответа JSON, вышел пользователь из системы или нет. Если это так, то в следующий раз, когда вы вызовете какой-либо PHP-скрипт, который использует $ _SESSION ['user_id'], произойдет сбой, вероятно, это означает, что пользователь вышел из системы.
Я думаю, что это все.