CakeFest 2024: The Official CakePHP Conference

readline_write_history

(PHP 4, PHP 5, PHP 7, PHP 8)

readline_write_historySchreibt die History

Beschreibung

readline_write_history(?string $filename = null): bool

Diese Funktion schreibt die Kommandozeilen-History in eine Datei.

Parameter-Liste

filename

Pfad zur Datei, in der gespeichert werden soll.

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Changelog

Version Beschreibung
8.0.0 filename ist nun ein Nullable-Typ.
add a note

User Contributed Notes 1 note

up
3
jonathan dot gotti at free dot fr
17 years ago
readline_write_history() doesn't take care of the $_SERVER['HISTSIZE'] value, here's an example on how to handle an history file in your apps taking care of user preferences regarding history size.

at the begining of your script:
<?php
$history_file
= $_SERVER['HOME'].'/.PHPinteractive_history';
# read history from previous session
if(is_file($history_file))
readline_read_history($history_file);
....
# your application's code
....
# put this at the end of yur script to save history and take care of $_SERVER['HISTSIZE']
if( readline_write_history($history_file) ){
# clean history if too long
$hist = readline_list_history();
if( (
$histsize = count($hist)) > $_SERVER['HISTSIZE'] ){
$hist = array_slice($hist, $histsize - $_SERVER['HISTSIZE']);
# in php5 you can replaces thoose line with a file_puts_content()
if( $fhist = fopen($history_file,'w') ){
fwrite($fhist,implode("\n",$hist));
fclose($fhist);
}
}
}
?>
To Top