O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

23.4 Passwörter einlesen

Problem

Sie müssen einen String von der Kommandozeile lesen, so dass er beim Eingeben nicht wieder ausgegeben wird, beispielsweise beim Eingeben von Passwörtern.

Lösung

Unter Unix verwenden Sie /bin/stty, um das Echo von eingetippten Zeichen ein- oder auszuschalten:

// Das Echo abschalten.
`/bin/stty -echo`;

// Passwort lesen.
$password = readline();

// Das Echo wieder einschalten.
`/bin/stty echo`;

Unter Windows verwenden Sie w32api_register_function( ), um _getch( ) von msvcrt.dll zu importieren:

// Die W32api-Erweiterung laden und _getch() registrieren. dl('php_w32api.dll'); w32api_register_function('msvcrt.dll','_getch','int'); while(true) { // Ein Zeichen von der Tastatur holen. $c = chr(_getch()); if ( "\r" == $c || "\n" ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required