複数の php ファイルがあり、すべてのファイルを 1 つのファイルにマージしたいと考えています。すべてのファイルにはパラメーターが付属しています。特定のファイルがパラメーターに一致する場合、そのファイルが実行され、一致しない場合はその他のファイルが実行されます。
機能していません。親切に私を助けてください。
複数の php ファイルがあり、すべてのファイルを 1 つのファイルにマージしたいと考えています。すべてのファイルにはパラメーターが付属しています。特定のファイルがパラメーターに一致する場合、そのファイルが実行され、一致しない場合はその他のファイルが実行されます。
機能していません。親切に私を助けてください。
「マージされた」ファイルの先頭に、含めるファイルをキーにした辞書を作成し、そのページのパラメーター名の配列を含む各レコードを作成し、これらを $_GET (または必要に応じて $_REQUEST) のキーと比較します。一致が見つかったらインクルード & ブレークします。
$page_parameters = array(
"person_search.php" => array("first_name","last_name"),
"edit_post.php" => array("post_id")
);
foreach($page_parameters as $page => $parameters) {
if($parameters == array_keys($_GET)) {
include $page;
break;
}
}
この例では、リクエストが含まれて?first_name=bill&last_name=wilson
いる場合は person_search.php に渡され、 が含まれている場合は?post_id=3121
edit_post.php に渡されます。
あなたのファイルは次のようなものだと思います:
01.php
<?php
echo $_GET["var1"];
?>
02.php
<?php
echo $_GET["var2"];
?>
03.php
<?php
echo $_GET["var3"];
?>
次に、 final.php は次のようになります。
<?php
//file 01.php
if(isset($_GET["var1"]){
echo $_GET["var1"];
exit();
}
//file 02.php
if(isset($_GET["var2"]){
echo $_GET["var2"];
exit();
}
//file 03.php
if(isset($_GET["var3"]){
echo $_GET["var3"];
exit();
}
?>
もちろん、関連するコードを投稿しない限り、それほど単純ではありません。
更新:あなたのコメントに基づいて、
最初のファイルへのread.php?param=dread
アクセス: 2 番目のファイルへのアクセス: read.php?param=dread2
(私の推測)
でread.php
:
if(isset($_Get['param'])){
if($param == 'dread'){
//mycode;
}
}
このコードはread.php
次の場所で使用できます。
if(isset($_Get['param'])){
$param = $_Get['param'];
if($param == 'dread'){
//your code for 'dread'
}
if($param == 'dread2'){
//your code for 'dread2'
}
} else { // if(isset($_Get['param'])) ENDS
// your code for the case if $param value is not pre-defined.
} //else ENDS
チェックファイルにクエリ文字列を渡すことができます。例:my~url.com?file=one
phpでif(GET['file'] == 'one'] //execute that file...