运行PHP服务器的Gulp插件?

运行PHP服务器的Gulp插件?,gulp,gulp-watch,Gulp,Gulp Watch,我想从咕噜声过渡到咕噜声。然而,我并没有找到一种方法来为PHP文件提供livereload支持,比如使用mounts的gateway()。有没有使用gulp任务运行/server PHP的插件?几周前我问了完全相同的问题。我想在Gulp下启动一个本机PHP服务器,因为我更喜欢语法而不是Grunt。我还想使用PHP来包含其他HTML文件。:)原来有一个“gulp connect php”插件,它的语法与“grunt php”插件非常相似 这是我要吞咽的代码: var gulp = requir

我想从咕噜声过渡到咕噜声。然而,我并没有找到一种方法来为PHP文件提供livereload支持,比如使用mounts的gateway()。有没有使用gulp任务运行/server PHP的插件?

几周前我问了完全相同的问题。我想在Gulp下启动一个本机PHP服务器,因为我更喜欢语法而不是Grunt。我还想使用PHP来包含其他HTML文件。:)原来有一个“gulp connect php”插件,它的语法与“grunt php”插件非常相似

这是我要吞咽的代码:

var gulp = require('gulp'),
    livereload = require('gulp-livereload'),
    connectPHP = require('gulp-connect-php');

gulp.task('connect', function() {
  connectPHP.server({
    hostname: '0.0.0.0',
    bin: 'C:/php/php.exe',
    ini: 'C:/php/php.ini',
    port: 8000,
    base: 'dev',
    livereload: true
  });
});
我还设置了exe和ini文件的位置

如果您感兴趣,以下是Grunt的代码:

php: {
  watch: {
    options: {
      livereload: true,
      bin: 'C:/php/php.exe',
      ini: 'C:/php/php.ini',
      base: '../development',
      port: 8000
    }
  }
}

我希望有帮助

我最终使用了gulp connect php和http代理。最后,我的php服务任务如下所示:

gulp.task('php-serve', ['styles', 'fonts'], function () {
connect.server({
    port: 9001,
    base: 'app',
    open: false
});

var proxy = httpProxy.createProxyServer({});

browserSync({
    notify: false,
    port  : 9000,
    server: {
        baseDir   : ['.tmp', 'app'],
        routes    : {
            '/bower_components': 'bower_components'
        },
        middleware: function (req, res, next) {
            var url = req.url;

            if (!url.match(/^\/(styles|fonts|bower_components)\//)) {
                proxy.web(req, res, { target: '{ip address taken out}:9001' });
            } else {
                next();
            }
        }
    }
});

// watch for changes
gulp.watch([
    'app/*.html',
    'app/*.php',
    'app/scripts/**/*.js',
    'app/images/**/*',
    '.tmp/fonts/**/*'
]).on('change', reload);

gulp.watch('app/styles/**/*.scss', ['styles']);
gulp.watch('app/fonts/**/*', ['fonts']);
gulp.watch('bower.json', ['wiredep', 'fonts']);
});

我不明白livereload和PHP有什么关系。。。你是想“观察”一些PHP文件并对它们的输出做些什么吗?有点像。我希望它能够服务于PHP文件,因为这正是我编写脚本的目的(使用include作为页眉、页脚),但我也希望在开发UI时能从sass、livereload等方面获得好处。你知道如何做到这一点吗?