Serve a Directory with PHP

By  on  

Many developers have a giggle at PHP, even looking down at the language, but let's be honest:  most of our blogs are powered by it (WordPress) and it's a great language to dabble around with.  I cut my teeth on PHP, though I prefer to avoid PHP these days.

But when I need to experiment with a simple PHP coding task for the sake of a blog feature, I look for the simplest possible serving solution to accomplish that feat.  Luckily PHP provides me a quick solution for testing:

php -S localhost:8888

The command above allows for serving of a directory via PHP, thus allowing for a simple PHP "site" to be served enough to confirm that my code testing works properly.

Serving a directory with PHP, python, or Node.js ... the same problem solved for different languages!

Recent Features

Incredible Demos

  • By
    MooTools Link Fading

    We all know that we can set a different link color (among other properties) on the hover event, but why not show a little bit more dynamism by making the original color fade to the next? Using MooTools 1.2, you can achieve that effect. The MooTools...

  • By
    CSS calc

    CSS is a complete conundrum; we all appreciate CSS because of its simplicity but always yearn for the language to do just a bit more. CSS has evolved to accommodate placeholders, animations, and even click events. One problem we always thought...

Discussion

  1. Joris Ros

    You can add easily a public directory to it by adding -t parameter.

    php -S localhost:8080 -t public_html
    
  2. Love tips like this, thanks for putting them together!

  3. If you’re using Linux. sudo right is required

  4. Elena

    To change a current directory function chdir() is used. It returns true on success and false on failure. Please note function chdir() works in PHP 4, PHP 5, PHP 7. Following is a description of this function.

    https://www.mindstick.com/Articles/12164/directory-handling-in-php

    http://pixelcode.co.uk/tutorials/php/directory-handling-in-php/

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!