PHPでインタラクティブなシェルをつくる
PHP始めたばかりの後輩がPHPにもインタラクティブなシェルがあったらいいのにといい標準入力をつかって何かできませんかね?といわれた件。そんなこと思いもつきませんでした><!
とりあえずこんな感じでいいいいみたい。いやquitとかやってもエラーでますけど。激しくWindowsです。5分で書いて難しいことは丸投げ(--;
<?php function main() { $BUFFER = ''; $STDIN = fopen('php://stdin','r'); while(true) { if($BUFFER != "quit\r\n") { $BUFFER = fread($STDIN, 1024); eval($BUFFER); } else { print "Bye\r\n"; break; } } } main(); ?>
c:\php5\php -f c:\hoge.php
とか呼び出すとシェルっぽい動きをします。