st"/> st">

ホームページ >バックエンド開発 >PHPチュートリアル >PHPセッションの奇妙なルール

PHPセッションの奇妙なルール

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 12:57:30847ブラウズ

PHP セッションの奇妙なルール

<br />
	session_start();<br />
	var_dump($_SESSION);<br />
	$name = 'laruence';<br />
	$_SESSION['name'] = null;<br />

出力: array(1) { ["name"]=> string(8) "ラルエンス" }

$name と $_SESSION['name'] は、互いに比較できない 2 つの変数です。なぜこれらを同じ変数にする必要があるのでしょうか。PHP を発明した人は頭がおかしいのでしょう。


-----解決策---------
引用:
引用:PHP コード?12345

出力:
配列(1) { ["名前"]=>NULL }


_glob を登録したのはあなたです...


私は間違っていました。この問題は register_global とは何の関係もありません。ただし、私のバージョン 5.4 にはこの問題はなく、5.4 には register_global オプションがありません。あなたのコードは、laruence のブログから引用されているようです: http://www.laruence.com/2009/07/13/976.html

彼はその理由をこう説明した。 session.bug_compat_42 がオンになっている場合、PHP は変数名が $_SESSION['name'] への参照であると認識し、session_close のときに変数 a の値が書き戻されます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。