PHP 8.5.0 Alpha 1 available for testing

Voting

: nine minus seven?
(Example: nine)

The Note You're Voting On

sfinktah at php dot spamtrak dot org
14 years ago
To read a single key-press in CLI mode, you can either use ncurses (which will probably require additional modules for PHP) or get nasty with the *nix "/bin/stty" command)

<?php
function stty($options) {
exec($cmd = "/bin/stty $options", $output, $el);
$el AND die("exec($cmd) failed");
return
implode(" ", $output);
}

function
getchar($echo = false) {
$echo = $echo ? "" : "-echo";

# Get original settings
$stty_settings = preg_replace("#.*; ?#s", "", stty("--all"));

# Set new ones
stty("cbreak $echo");

# Get characters until a PERIOD is typed,
# showing their hexidecimal ordinal values.
printf("> ");
do {
printf("%02x ", ord($c = fgetc(STDIN)));
} while (
$c != '.');

# Return settings
stty($stty_settings);
}

getchar();
?>

<< Back to user notes page

To Top