自分のページ( )のすべてsession
の情報をページpost
に表示したい。どうやってやるの?get
php
.php
5 に答える
<?php print_r($_SESSION); ?>
<?php print_r($_POST); ?>
<?php print_r($_GET); ?>
以下のコードを使用してprint
/var_dump
情報
セッションは以下です
<?php var_dump($_SESSION); ?>
投稿は以下です
<?php var_dump($_POST); ?>
GetIsBelowの場合
<?php var_dump($_GET); ?>
わかりました。誰もが明白なことを述べていますが、すべてのソリューションに組み込まれているセキュリティリスクについては言及していません。
私は違うように頼みます、ここに私の選択肢があります:
echo "<pre>";
echo htmlspecialchars(var_export($_POST, true), ENT_QUOTES);
echo htmlspecialchars(var_export($_GET, true), ENT_QUOTES);
echo htmlspecialchars(var_export($_SESSION, true), ENT_QUOTES);
echo "</pre>";
攻撃者が悪意のあるコードをセッションに侵入させることはおそらく考えていませんが、決してわかりません。
別の言い方をすれば:
header("Content-type: text/plain");
var_export($_POST);
var_export($_GET);
var_export($_SESSION);
同様にうまく機能しますが、ブラウザがコンテンツをスニッフィングしようとすることに注意してください。
ものの3分の2をうまく印刷する別の方法:
phpinfo(INFO_VARIABLES);
そして最後に:<plaintext>
タグを試してください。ブラウザでのHTMLの解釈が終了するため、明らかな理由で終了タグはありませんが、送信後は、プレーンテキストの印刷のみを気にする必要があります。
echo "<plaintext>";
var_export($_POST);
var_export($_GET);
var_export($_SESSION);
var_export
上記の利点がvar_dump
ありprint_r
ます:変数を再作成できる有効なPHPコードを出力します。これは、オブジェクト以外のすべてのタイプに100%当てはまります。オブジェクトを__set_state
再作成できるようにするには、マジックスタティックメソッドを実装する必要があります。
これを試して :
役職
foreach ($_POST as $key => $value) {
$postData = "POST Field " . htmlspecialchars($key) . " is " . htmlspecialchars($value) . "<br>";
}
得る
foreach ($_GET as $key => $value) {
$postData = "GET Field " . htmlspecialchars($key) . " is " . htmlspecialchars($value) . "<br>";
}
セッション
foreach ($_SESSION as $key => $value) {
$postData = "SESSION Field " . htmlspecialchars($key) . " is " . htmlspecialchars($value) . "<br>";
}
オブジェクトも処理するので、print_r()よりもvar_dump()の方が好きです。また、ダンプの周りにタグを出力するのが好きな<pre>
ので、ブラウザで読みやすくなっています。
echo "<pre>";
var_dump($_SESSION);
var_dump($_POST);
var_dump($_GET);
echo "</pre>";