psysh.org is the REPL shell we have been waiting for. How to start an interactive shell with a given context:

<?php
require 'vendor/autoload.php';
$app = require 'src/app.php';
Psy\Shell::debug(['app' => $app]);

Supports readline, pcntl, registering custom commands, automatic semicolon insertion, clean+concise string representations of evaluated values. Amazing work Justin Hileman!

updated: