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
    Introducing MooTools LazyLoad

    Once concept I'm very fond of is lazy loading. Lazy loading defers the loading of resources (usually images) until they are needed. Why load stuff you never need if you can prevent it, right? I've created LazyLoad, a customizable MooTools plugin that...

  • By
    QuickBoxes for Dojo

    Adding to my mental portfolio is important to me. First came MooTools, then jQuery, and now Dojo. I speak often with Peter Higgins of Dojo fame and decided it was time to step into his world. I chose a simple but useful plugin...

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!