list('5+6')
возвращает
['5', '+', '6']
PHPSESSID
, по умолчанию), видят ответ @richie setcookie()
и setrawcookie()
функции, представили httponly
параметр, назад в средневековье PHP 5.2.0, делая это хорошим и легким. Просто установите 7-й параметр на истинный согласно синтаксису
, Синтаксис функций, упрощенный для краткости
setcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
setrawcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
, Входит NULL
для параметров, которыми Вы хотите остаться как значение по умолчанию. Можно также хотеть рассмотреть, необходимо ли устанавливать secure
параметр.
Это - также возможное использование более старого, низшего уровня header()
функция:
header( "Set-Cookie: name=value; httpOnly" );
Знайте, что HttpOnly не останавливает сценарии перекрестного сайта; вместо этого, это нейтрализует одно возможное нападение, и в настоящее время делает это только на IE (FireFox представляет cookie HttpOnly в XmlHttpRequest, и Safari не соблюдает его вообще). Любой ценой включите HttpOnly, но не отбрасывайте даже час выходной фильтрации и тестирования пуха в торговле для него.
Обратите внимание, что сеансовые куки PHP не используют httponly
по умолчанию.
, Чтобы сделать это:
$sess_name = session_name();
if (session_start()) {
setcookie($sess_name, session_id(), null, '/', null, null, true);
}
Несколько знаменитых объектов здесь:
session_name()
прежде session_start()
<?php
//None HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, FALSE);
//HttpOnly cookie:
setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
?>
Объяснение здесь из Илии... 5.2 только, хотя
поддержка флага httpOnly cookie в PHP 5.2
, Как указано в той статье, можно установить заголовок сами в предыдущих версиях PHP
header("Set-Cookie: hidden=value; httpOnly");
Можно определить, что это в функции cookie набора видит php руководство
setcookie('Foo','Bar',0,'/', 'www.sample.com' , FALSE, TRUE);