PHPのsession_decode()関数に、 'R'で指定されたPHP参照変数のオブジェクト型があることに気づきました。しかし、私はこのオブジェクト型を出力するsession_decode()を取得する方法を見つけることができないようです。参照変数を$ _SESSIONに代入してからsession_decode()を呼び出すと、参照変数はsession_decode()によって参照される変数と同じオブジェクト型を持ち、 'R'ではなく、表現されます。 session_decodeオブジェクト型 'R'のユースケースは何ですか?session_decodeの結果でPHP参照変数を取得する方法
1
A
答えて
2
session_encode
は、変数を参照としてエンコードするために、参照される変数もセッションに入る必要があります。セッション中でなければ、元のタイプとしてエンコードします。
$foo = 'bar';
$_SESSION['foo'] = $foo;
$_SESSION['bar'] = &$_SESSION['foo'];
$_SESSION['baz'] = &$foo;
$_SESSION['hey'] = &$foo;
var_dump(session_encode());
出力:あなたが見ることができるように
foo|s:3:"bar";bar|R:1;baz|s:3:"bar";hey|R:2;
は、foo
は文字列として格納されています。 bar
はfoo
への参照として格納されていますが、baz
はローカル変数$foo
を参照しているため、セッションが他の場所でデコードされたときには存在しない可能性があるため、PHPは自動的に元の文字列型に変換します。しかし、hey
も$foo
への参照ですが、参照変数はbaz
として保存されているため、PHPはbaz
への参照としてhey
をエンコードします。
0
ああ、私はそれが何をしているかを見ていると思います。このような何かをやってみます(任意の運を持つ)参照型をトリガすべき
array(
0 => array(
0 => 1
),
1 => &array(
0 => 1
),
)
:
$array = array(array(1));
$array[1] =& $array[0];
だから今、配列は次のようになります。
関連する問題
- 1. PHPで静的定数メンバー変数を参照する方法
- 2. Rubyファイルの結果をPHPページで取得する方法は?
- 3. 別のクラスでAsyncTaskの結果を参照する方法は?
- 4. 変数/プレースホルダの名前で参照を取得する方法は?私が参照してる名前で
- 5. セル参照を取得する方法
- 6. PHP MySQL:複数のテーブルを選択し、パフォーマンスサマリーを返す方法PHPで結果を取得する方法
- 7. メール範囲内のピボットテーブルの結果を参照する方法
- 8. PHPでセッション変数を参照する
- 9. php mssqlで結果を参照するには?
- 10. EXPECT_CALL引数への参照を取得する方法
- 11. 質問の結果をPHPで変数に入れる方法
- 12. データフレームの結果を変数に取得
- 13. PHP - DOMXpath - 結果を取得
- 14. VSTS。参照連結変数
- 15. PHP - オブジェクトの関数への参照を取得する
- 16. 参加のクエリの結果を取得
- 17. SQLクエリの結果を参照する
- 18. PHP変数でスクリプト変数を取得する方法
- 19. wxMaxime:10進数の結果を取得する方法は?
- 20. fingerprintjs2関数の結果を取得する方法は?
- 21. ループから結果の数を取得する方法
- 22. 非同期関数の結果を取得する方法は?
- 23. クエリ結果を参照するには?
- 24. クエリ:、連結方式の参加が、取得結果が
- 25. Spring JDBCテンプレート。 pl/sqlスクリプトの結果変数を取得する方法
- 26. PHPでtempテーブルを持つMSSQLストアドプロシージャの結果を取得する方法Codeigniter
- 27. Null参照分析の結果をログファイルに取り込む方法
- 28. 2つのテーブルを相互参照して結果を得る
- 29. mongooseでの参照から配列を取得する方法
- 30. Pythonでオブジェクトへの参照を取得する方法
生成される形式は、文書化されていないIIRCです。したがって、フォーマットをリバースエンジニアリングすることはできますが、奇妙な動作や曖昧な動作に遭遇した場合には驚くことはありません。私は出発点としてCのソースをチェックアウトすることをお勧めします...ああ、 'R'はおそらく"リソース "であり、参照ではありません... – ircmaxell
http://php.net/manual/en/function.session- decode.php#56106参照リソースではありません – stevebot