Documentation
Helper Term
Table des matières ▼
Présentation
Ce helper facilité la gestion des terminaux (TTY) lors de l'écriture de scripts en ligne de commande.
L'objet \Temma\Utils\Term propose des méthodes statiques.
input()
Cette méthode statique permet de récupérer un texte saisi par l'utilisateur.
Signature de la méthode :
input() : string
Exemple :
use \Temma\Utils\Term as TµTerm;
print("Quel est ton nom ?\n");
$nom = TµTerm::input();
print("Bonjour '$nom'\n");
password()
Cette méthode statique permet de récupérer un texte saisi par l'utilisateur, sans que le texte n'apparaisse à l'écran.
Signature de la méthode :
password() : string
Exemple :
use \Temma\Utils\Term as TµTerm;
print("Veuillez saisir votre mot de passe\n");
$pwd = TµTerm::input();
if (mb_strlen($pwd) < 12)
print("Votre mot de passe est trop court\n");
clear()
Efface l'écran.
Signature de la méthode :
clear() : void
Exemple :
\Temma\Utils\Term::clear();
clearFromCursor()
Efface l'écran à partir de la position du curseur.
Signature de la méthode :
clearFromCursor() : void
Exemple :
\Temma\Utils\Term::clearFromCursor();
reset()
Efface l'écran et réinitialise sa configuration. L'historique d'affichage est perdu.
Signature de la méthode :
reset() : void
Exemple :
\Temma\Utils\Term::reset();
clearLine()
Efface la ligne sur laquelle le curseur est positionné. Le curseur est repositionné au début de la ligne.
Signature de la méthode :
clearLine() : void
Exemple :
\Temma\Utils\Term::clearLine();
clearLineFromCursor()
Efface la ligne courante après le curseur.
Signature de la méthode :
clearLineFromCursor() : void
Exemple :
\Temma\Utils\Term::clearLineFromCursor();
hideCursor()
Cache le curseur.
Signature de la méthode :
hideCursor() : void
Exemple :
\Temma\Utils\Term::hideCursor();
showCursor()
Affiche le curseur.
Signature de la méthode :
showCursor() : void
Exemple :
\Temma\Utils\Term::showCursor();
saveCursor()
Sauvegarde la position du curseur (pour pouvoir la restaurer plus tard avec la méthode restoreCursor()).
Signature de la méthode :
saveCursor() : void
Exemple :
\Temma\Utils\Term::saveCursor();
restoreCursor()
Restaure la position du curseur qui a été préalablement sauvegardée avec la méthode saveCursor().
Signature de la méthode :
restoreCursor() : void
Exemple :
\Temma\Utils\Term::restoreCursor();
moveCursorHome()
Déplace le curseur dans le coin en haut à gauche (position 0,0) du terminal.
Signature de la méthode :
moveCursorHome() : void
Exemple :
\Temma\Utils\Term::moveCursorHome();
moveCursorTo()
Déplace le curseur aux coordonnées passées en paramètre.
Signature de la méthode :
moveCursorTo(int $x, int $y) : void
Exemple :
\Temma\Utils\Term::moveCursorTo(17, 4);
moveCursorLineStart()
Déplace le curseur au début de la ligne courant.
Signature de la méthode :
moveCursorLineStart() : void
Exemple :
\Temma\Utils\Term::moveCursorLineStart();
moveCursorUp()
Déplace le curseur vers le haut du nombre de lignes passé en paramètre (1 ligne par défaut).
Signature de la méthode :
moveCursorUp(int $nbrLines=1) : void
Exemple :
use \Temma\Utils\Term as TµTerm;
// déplace d'une ligne vers le haut
TµTerm::moveCursorUp();
// déplace de trois lignes vers le haut
TµTerm::moveCursorUp(3);
moveCursorDown()
Déplace le curseur vers le bas du nombre de lignes passé en paramètre (1 ligne par défaut).
Signature de la méthode :
moveCursorDown(int $nbrLines=1) : void
Exemple :
use \Temma\Utils\Term as TµTerm;
// déplace d'une ligne vers le bas
TµTerm::moveCursorDown();
// déplace de trois lignes vers le bas
TµTerm::moveCursorDown(3);
moveCursorRight()
Déplace le curseur vers la droite du nombre de colonnes passé en paramètre (1 colonne par défaut).
Signature de la méthode :
moveCursorRight(int $nbrColumns=1) : void
Exemple :
use \Temma\Utils\Term as TµTerm;
// déplace d'une colonne vers la droite
TµTerm::moveCursorRight();
// déplace de trois colonnes vers la droite
TµTerm::moveCursorRight(3);
moveCursorLeft()
Déplace le curseur vers la gauche du nombre de colonnes passé en paramètre (1 colonne par défaut).
Signature de la méthode :
moveCursorLeft(int $nbrColumns=1) : void
Exemple :
use \Temma\Utils\Term as TµTerm;
// déplace d'une colonne vers la gauche
TµTerm::moveCursorLeft();
// déplace de trois colonnes vers la gauche
TµTerm::moveCursorLeft(3);
getCursorPosition()
Cette méthode retourne la position actuelle du curseur.
Signature de la méthode :
getCursorPosition() : array
Exemple :
use \Temma\Utils\Term as TµTerm;
[$x, $y] = TµTerm::getCursorPosition();
getScreenSize()
Cette méthode retourne la taille de l'écran (le nombre de colonnes et de lignes).
Signature de la méthode :
getScreenSize(bool $force=false) : array
Paramètre :
- $force : true pour forcer la récupération (sans utiliser le cache). Inutile la plupart du temps, car l'objet met à jour les valeurs en cache lorsque le terminal est redimensionné.
Exemple :
use \Temma\Utils\Term as TµTerm;
[$with, $height] = TµTerm::getScreenSize();
Précédent : | Helper Smarty |
Suivant : | Helper Text |
Table des matières
- Migration : Comment passer de Temma 1.x à la version 2
- Installation : Télécharger Temma et l'installer pour démarrer votre projet Web
- Configuration : Toutes les directives de configuration du fichier etc/temma.json et les variables d'environnement utilisables en option
- Bibliothèques externes : Comment utiliser des bibliothèques de fonctions externes
- Routage : Le système de routage par défaut de Temma, et le routage avancé
- Log : Utilisation du système de log, gestion par niveaux de criticité
- Contrôleurs : Pièces essentiels de votre application Web
- Vues : Templates Smarty ou exports JSON/CSV/RSS/iCal/INI
- Injection de dépendances : La colonne vertébrale de vos développements applicatifs
- Sessions : Extension des sessions utilisateurs gérées par PHP
- Sources de données : Pour gérer l'accès aux données de manière unifiée
- Modèle : Comment utiliser les DAO pour accéder aux bases de données
- Flux d'exécution : Comment gérer le flux d'exécution, entre les plugins et le contrôleur
- Plugins : Comment utiliser les plugins, et écrire les vôtres pour modulariser votre code
- Attributs : Comment filtrer l'accès aux contrôleurs et aux actions
- Tests : Pour écrire des tests d'intégration automatisés.
- Interface en ligne de commande : Pour créer des scripts exécutables en ligne de commande, initialisés automatiquement par Temma
-
Helpers :
Objets proposés par Temma pour vous aider dans plusieurs circonstances
- Scripts en ligne de commande
-
Contrôleur + plugin
- Auth : Contrôleur et plugin servant à gérer l'authentification des utilisateurs
- Plugins
- Attributs
-
Plugins Smarty
- urlize : Modificateur transformant un texte en URL
- filenamize : Modificateur transformant un texte en nom de fichier
- nbsp : Modificateur transformant des espaces en espaces non sécables
-
Objets utilitaires
- ANSI : Pour mettre en forme les textes écrits sur la sortie standard
- BaseConvert : Pour faire des conversions de bases numériques
- DataFilter : Pour filtrer et valider des données
- Email : Pour envoyer des emails
- HTMLCleaner : Pour nettoyer un flux HTML provenant d'un éditeur WYSIWYG
- IniExport : Pour exporter des données au format INI
- Json : Pour lire des flux JSON pouvant contenir des commentaires
- Lock : Pour verrouiller l'accès à un fichier, ou l'exécution du script PHP courant
- Registry : Pour stocker proprement des variables globales
- Smarty : Pour traiter des templates Smarty en dehors de la vue
- Term : Gestion des terminaux (TTY)
- Text : Différents traitements sur les chaînes de caractères
- Timer : Pour gérer des chronomètres