Nightmarish Pawnshop Mystic

    grunt-php

    3.0.0 • Public • Published

    grunt-php Build Status

    Start a PHP server

    Useful for developing PHP projects or running tests on them.

    Pretty much a drop-in replacement for grunt-contrib-connect, except for the middleware option.

    Uses the PHP built-in server.

    Install

    $ npm install --save-dev grunt-php
    

    Usage

    require('load-grunt-tasks')(grunt);
     
    grunt.initConfig({
        php: {
            dist: {
                options: {
                    port: 5000
                }
            }
        }
    });
     
    grunt.registerTask('default', ['php']);

    Examples

    Start a persistent PHP server and open in browser

    grunt.initConfig({
        php: {
            test: {
                options: {
                    keepAlive: true,
                    open: true
                }
            }
        }
    });
     
    grunt.registerTask('test', ['php', 'mocha']);

    Use it with BrowserSync

    grunt.initConfig({
        php: {
            dist: {
                options: {
                    port: 9000,
                    base: 'dist' // Project root
                }
            }
        },
        browserSync: {
            dist: {
                bsFiles: {
                    src: [
                        // Files you want to watch for changes
                    ]
                },
                options: {
                    proxy: '<%= php.dist.options.hostname %>:<%= php.dist.options.port %>',
                    watchTask: true,
                    notify: true,
                    open: true,
                    logLevel: 'silent',
                    ghostMode: {
                        clicks: true,
                        scroll: true,
                        links: true,
                        forms: true
                    }
                }
            }
        },
        watch: {
            // Your watch tasks
        }
    });
     
    grunt.registerTask('serve', [
        'php:dist',         // Start PHP Server
        'browserSync:dist', // Using the PHP instance as a proxy
        'watch'             // Any other watch tasks you want to run
    ]);

    Use it with grunt-contrib-watch

    grunt.initConfig({
        php: {
            watch: {}
        }
    });
     
    grunt.registerTask('phpwatch', ['php:watch', 'watch']);

    Add path for a custom error log

    const path = require('path');
     
    grunt.initConfig({
        php: {
            dist: {
                options: {
                    directives: {
                        'error_log': path.resolve('logs/error.log')
                    }
                }
            }
        }
    });
     
    grunt.registerTask('default', ['php']);

    Options

    Supports all the php-server options in addition to the ones below.

    keepAlive

    Type: boolean
    Default: false

    Keep the server alive indefinitely. Any task specified after this will not run.

    This option can also be enabled ad-hoc by running the task like grunt php:targetname:keepAlive.

    silent

    Type: boolean
    Default: false

    Suppress output produced by the PHP server.

    Related

    License

    MIT © Sindre Sorhus

    Install

    npm i grunt-php

    DownloadsWeekly Downloads

    649

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    5.27 kB

    Total Files

    4

    Last publish

    Collaborators

    • sindresorhus