0
$pages = array('Text1.php', 'Text2.php', 'Text3.php');

// $currentpage depends the page you're on

$currentId = array_search($currentpage, $pages);

を介してアクセスされるphpスクリプトがinclude(Text4.php)ありinclude(Text4.php)、配列内の上記の3つのphpスクリプトすべてに格納されています。ここで、ユーザーが現在表示しているページと等しくなり、現在のページのファイル名となる£currentpage値と一致するように設定します。$pages

私の質問は、上記のコードで、達成するはずの機能を実行するために$currentId変数をどのように記述する必要があるかということです。

4

3 に答える 3

1

ファイル名のみ:

$currentPage = basename(__FILE__);

__

ディレクトリ名+ファイル名:

$currentPage = __FILE__;

__

ディレクトリのみ:

$currentPage = __DIR__;
于 2013-01-03T19:55:15.753 に答える
0

//パスが必要な場合

$currentpage = $_SERVER['PHP_SELF'];

//実際のファイル名(文字通り「Test.php」)のみが必要な場合

$posofslash = strrpos($_SERVER['PHP_SELF'],'/');
$currentpage = substr($_SERVER['PHP_SELF'],$posofslash);
于 2013-01-03T19:47:57.973 に答える
0

これは、ブラウザゲームで使用するコードです。表現は少し変更されていますが、コード自体はうまく機能しています。すべてのphpコードは、「print」を使用した「if」ステートメント内に配置できます。

    ///---Various Navigation & Functions Depending on Current Page---///

$findpage = strrpos($_SERVER['PHP_SELF'],'/');  
$currentpage = substr($_SERVER['PHP_SELF'],$findpage);
if ($currentpage == '/home.php'){
 print "This message is displayed when the client is on the 'home' page.";
 print "If you so chose, you can put the entire 'home' page code in here.";
 print "While keeping this the only code being executed.";}
if ($currentpage == '/features.php'){
 print "This message is displayed when the client is on the 'features' page.";
 print "If you so chose, you can put the entire 'features' page code in here.";
 print "While keeping this the only code being executed.";}
if ($currentpage == '/menu.php'){
 print "This message is displayed when the client is on the 'menu' page.";
 print "If you so chose, you can put the entire 'menu' page code in here.";
 print "While keeping this the only code being executed.";}
if ($currentpage == '/store.php'){
 print "This message is displayed when the client is on the 'store' page.";
 print "If you so choose, you can put the entire 'store' page code in here.";
 print "While keeping this the only code being executed.";}
于 2015-09-08T06:55:12.337 に答える