gulp.jsのローカルサーバーで簡単にPHPを使えるようにする方法を紹介します。
gulpでローカルサーバーを作る際、「gulp-connect」というモジュールを使いますが、この「gulp-connect」ではPHPを使うことができません。
ヘッダーを読み込んで一元化したり、変数を使って条件分岐したり、Web開発では何かとPHPを使う機会が多いので困りますよね(^_^;)
ですが、「gulp-connect」の代わりにこのモジュールを使うことで解決できます!
gulp-connect-phpを使ってみる
「gulp-connect-php」というモジュールを使ってみましょう!
const gulpConnect = require( "gulp-connect-php" );
使い方は簡単で、この一行でモジュールを読み込みます。
※「gulp-connect-php」を使う時は、「gulp-connect」は必要ありません。
そして以下のように実行してあげればいいのですが、「出力先のフォルダパス」のキーに気をつけてください。
ここのキーが「base」になっていますが、「gulp-connect」では「root」だったはずです。
ここを直し忘れて「root」のままにしていると、gulpコマンドでエラーになってしまいます。
//gulpプラグイン読み込み const gulp = require ( "gulp" ); //browserSync読み込み const browserSync = require( "browser-sync" ).create(); //ローカルサーバー読み込み const gulpConnect = require( "gulp-connect-php" ); //SSI(サーバサイドインクルード)読み込み const connectSSI = require( "connect-ssi" ); /* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ローカルサーバー立ち上げ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */ gulp.task( "connect-sync", function(){ gulpConnect.server({ base: "./dist/", //出力先のフォルダパス livereload: true, port: 3001 }, function(){ browserSync.init({ proxy: "localhost:3001", middleware: [/*SSI有効*/ connectSSI({ baseDir: "./dist/", ext: ".html" }) ] }); }); }); gulp.task("default", gulp.series(gulp.parallel("connect-sync")));
最後にこのコードを実行して表示されれば、成功です!
<?php echo "Hello world"; ?>