PHP の If-Else ステートメントから値を抽出する
<p>Offer.php には 200 ~ 300 の if else ステートメントがあります。私のチームリーダーは、if else ステートメントの値を取得したいと考えています。 $_GET と == "value" の値が必要です。 </p>
<p><strong>Offer.php :</strong></p>
<pre class="brush:php;toolbar:false;"><?php
if (isset($_GET['test']) && $_GET['test'] == "one") {
「hi.php」を含める;
elseif (isset($_GET['demo']) && $_GET['demo'] == "two") {
「hello.php」を含める;
elseif (isset($_GET['try']) && $_GET['try'] == "three") {
「bye.php」を含める;
} それ以外 {
「default.php」をインクルードします。
}
?></pre>
<p><strong>Value.php</strong> (試してみる) :</p>
<pre class="brush:php;toolbar:false;"><?php
$code = file_get_contents("offer.php");
// $_GET 変数とその対応する値に一致する正規表現
$pattern = '/isset($_GET['([^'] )'])s*&&s*$_GET['1']s*==s*"([^"] )"/ ';
preg_match_all($pattern, $code, $matches);
$getValues = [];
$values = [];
foreach ($matches として $match) {
$getValues[] = $match[1];
$values[] = $match[3];
}
print_r($変数);
print_r($values);
?></pre>
<p><strong>期待される出力:</strong></p>
<pre class="brush:php;toolbar:false;">配列
(
[0] => テスト
[1] => デモ
[2] => 試してみる
)
配列
(
[0] => 1
[1] => 2
[2] => 3
)</pre>
<p><strong>問題: 出力として空の配列を取得します。 </strong></p>