1

$accountを$urlにエコーして、url/pathが$accountと拡張子jsonから取得したものになるようにする必要があります。引用符ではわかりません。一重引用符と二重引用符を試しましたが、うまくいきませんでした。何か案は?

<?php 
$account = $_POST['account'];
$url = 'echo $account.json'; //
$content = file_get_contents($url);
$json = json_decode($content, true);
?>
4

3 に答える 3

1

このような?

<?php 
$account = $_POST['account'];
$url = $account. '.json'; //
$content = file_get_contents($url);
$json = json_decode($content, true);
?>

演算子は、.phpでの文字列の連結に使用されます。これは、の値を取得し$accountて文字列を末尾に追加し、.jsonそれを変数に格納することを意味します$url。コードの残りの部分は、そこから問題なく表示されます。PHPの文字列を使用してこれを行う方法は他にもいくつかありますが、これが最も簡単です。

于 2012-04-23T23:47:19.840 に答える
0

あなたはこれとしてこれを行うことができます

$account = $_POST['account'];
$content = file_get_contents($account.'.json');
$json = json_decode($content, true);

コードがインジェクションに対してどのように脆弱であるかを思い出させる必要がありますか?

于 2012-04-23T23:55:16.270 に答える
-1

のドキュメントでstringsは、文字列のフォーマット方法について詳しく説明しています。変数の前後に中括弧({})を使用して、識別子の終わりを示すこともできます。

$url = "{$account}.json"
于 2012-04-23T23:52:43.213 に答える