ワードプレスの関数とかディスコードボットなんかにPHPを使ってましたが、本来の使い方をしてなかったので試してみる。
PHPのビルトインサーバー(言語で用意されているウェブサーバー)を使ってサーバーサイドの動作を確認します。
公開には使えませんがアプリケーション開発の支援用ということなので、とりあえずテストしてみたい場合には最適です。
実行自体はコマンド1つ。
1 |
php -S localhost:8080 |
実行ディレクトリがルートになります。
index.phpかindex.htmlがない場合にはNot Foundが表示されます。
http://localhost:8080/page.php のようにアクセスすることで実行可能です。
1 2 3 4 |
<?php $tmp = "PHP web test"; ?> <div><?=$tmp?></div> |
ルータースクリプトを指定してアクセス時の処理を制御できます。
1 |
php -S localhost:8080 router.php |
HTMLファイルでPHPを実行するように書いてみる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php $path = $_SERVER["SCRIPT_NAME"]; //現在のスクリプトのパス if( !preg_match( "/\.html$/", $path ) ){ //正規表現によるマッチング return false; //htmlでないならそのまま } $ss = substr( $path, 1 );//最初の / を除く $dir = dirname( $ss ); //親ディレクトリのパス $file = basename( $ss ); //ファイル chdir( $dir ); //change directory require_once( $file ); //php実行 return true; ?> |
これでhtmlにアクセスした場合でもPHPが実行される。
ある程度の規模で動かせるようになったら公開の方も試してみたいです。