Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1700 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  PHP - Fonction Readline non détectée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

PHP - Fonction Readline non détectée

n°2403508
Profil sup​primé
Posté le 12-12-2021 à 17:53:00  answer
 

Bonjour,
 
Alors voilà mon problème. J'ai passé la nuit précédente à chercher sur le net, mais je n'ai rien trouvé de probant. Je suis en train d'apprendre le langage PHP avec les tutos YouTube de Grafikart, et dès que je tape cette ligne de code dans Visual Studio Code :
 
<?php  
    $notes = [];
    $action = null;
 
    while ($action !== 'fin') {
        $action = readline('Veuillez entrer une nouvelle note (ou \'fin\' pour terminer la saisie) :');
    }
    if ($action != 'fin') {
        $notes[] = (int)$action;
    }
    foreach ($notes as $note) {
        echo "- $note\n";
    }
?>
 
voilà le message d'erreur qui m'apparaît : Fatal error: Uncaught Error: Call to undefined function readline() in C:\Users\loust\Documents\TESTPHP\demo.php:6
Stack trace:
#0 {main}
  thrown in C:\Users\loust\Documents\TESTPHP\demo.php on line 6
 
soit traduit : Erreur fatale : Erreur non détectée : Appel à la fonction non définie readline() dans C:UsersloustDocumentsTESTPHPdemo.php:6
Trace de pile :
#0 {principal}
  lancé dans C:UsersloustDocumentsTESTPHPdemo.php à la ligne 6.
 
Après plusieurs tests de mon côté, je me rends compte que ce problème ne provient pas de l'éditeur de texte, puisque je rencontre la même bouse sur Sublimtext lorsque je génère la page web, ça me la crache en erreur-500, cause le code, puisque dès lors que je change le code, ce dernier apparaît nickel après rafraichissement de la page web. J'ai testé sur MAMP et sur XAMPP, et le problème demeure. Je suppose que le problème vient du fait qu'un fichier .DLL manque à mes extensions. Je suis allé sur le fichier php.ini de la version PHP que j'utilise, j'ai fait sauter tous les points virgules des extensions, j'ai bien enregistré le fichier à sa place, j'ai même copié tous les fichiers .dll dans le dossier ext que j'ai ensuite collé dans le dossier de la version php que j'utilise, mais rien n'y fait.
 
Je précise que je suis sous Windows 10, je sais pas si le problème peut venir de là, même si cela me semble improbable, mais j'en sais rien, je suis nouveau dans la discipline. Le seul truc que j'ai pu trouver c'est ça, mais je pige flou cette commande :
 
<?php
// check si tu es sous windows
if (PHP_OS == 'WINNT') {
  echo 'Entrez votre note ';
  $line = stream_get_line(STDIN, 1024, PHP_EOL);
} else {
  $line = readline('Entrez votre note ');
}
?>
 
ceci qui semble à peu près régler le problème, mais je me demande pourquoi tant de complications. Si un fichier .dll manque pour la fonction readline, je ne sais où la trouver. Enfin. Comme vous le comprendrez, j'ai besoin d'aide. Merci par avance.
 
P.S. J'ai aussi ce message que je reçois : PHP CS Fixer: executablePath not found, please check your settings. It will set to built-in php-cs-fixer.phar. Try again!
 
soit traduit : PHP CS Fixer: exécutablePath introuvable, veuillez vérifier vos paramètres. Il sera défini sur php-cs-fixer.phar intégré. Réessayez!
 
Je continue à chercher de mon côté, mais toute aide est la bienvenue.


Message édité par Profil supprimé le 12-12-2021 à 18:47:45
mood
Publicité
Posté le 12-12-2021 à 17:53:00  profilanswer
 

n°2403518
gatsu35
Blablaté par Harko
Posté le 12-12-2021 à 22:18:44  profilanswer
 

Tu as conscience que readline ne peut être utilisé que dans le cadre de l'utilisation de PHP en ligne de commande,  
En aucun cas ça matche dans le cadre de l'utilisation du WEB.
Dans ce cas il te faut un formulaire et la récupération des données en POST.


---------------
Blablaté par Harko
n°2403520
Profil sup​primé
Posté le 12-12-2021 à 22:22:53  answer
 

Non tu me l'apprends. Mais même en ligne de commande, cela ne fonctionne pas. Donc si je comprends bien, pour créer une page web avec un élément interactif, il y a une autre commande à entrer, ou une fonction à définir au préalable. Je continue de chercher, et d'apprendre.

n°2403785
rufo
Pas me confondre avec Lycos!
Posté le 14-12-2021 à 22:14:57  profilanswer
 

https://www.php.net/manual/fr/readline.requirements.php :o
 
Si t'es sous Win10, WampServer ou uWamp me paraît plus approprié.
Pour apprendre le PHP en mode web (utilisation la plus courante quand même), commence par apprendre le HTML + CSS puis ensuite, tu rajoutes le PHP (notamment avec le traitement des formulaires pour le côté interactif). Enfin, tu rajoutes le SQL pour la BD et le Javascript pour le côté interactif côté client. ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2403786
Profil sup​primé
Posté le 14-12-2021 à 22:23:52  answer
 

Bonsoir Rufo,
 
Avant toute chose, merci pour ta réponse. J'ai cherché cherché, mais apparemment, ou pas assez, ou pas de manière la plus compétente.  
 
Je note ce que tu m'as dit pour WampServer et uWamp. C'est que je préférerai dans les débuts la console pour pouvoir m'exercer comme il faut, la pratique aide mieux à corriger ses erreurs et retenir les procédés je trouve, enfin pour moi en tous cas. Là du coup ça me fait bloquer sur les fonctions, je pige la théorie, mais ai besoin de m'exercer, encore et encore.
 
HTML et CSS c'est fait. Là je fais PHP, SQL, et JavaScript comme tu dis, c'est justement l'ordre que je me suis fixé, avec ensuite Python et C.
 
Et oui, je suis bien sous Windows 10 au fait.
 
Merci encore pour ta réponse.


Message édité par Profil supprimé le 14-12-2021 à 22:26:13
n°2403806
rufo
Pas me confondre avec Lycos!
Posté le 15-12-2021 à 07:47:06  profilanswer
 

Tu peux parfaitement débogguer avec des echo / print_r() / var_dump() un script PHP fait pour du web :o
Franchement, commencer php par le mode console, tu dois être l'un des rares à l'avoir fait  :whistle:
 
Edit : c'est un peu comme si tu apprenais le C et que tu le faisais en mode web (un .exe écrit en C qui va générer du HTML et traiter des formulaires). C'est faisable, mais c'est pas l'utilisation première du C ni la plus naturelle :/


Message édité par rufo le 15-12-2021 à 07:54:02

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2404187
Profil sup​primé
Posté le 19-12-2021 à 11:11:36  answer
 

Bon, voilà.
 
J'ai bien lu ton message, j'ai pas encore testé le débug, mais, sauf erreur de ma part (bien possible), je crois que cela ne permet pas de créer une interactivité entre le script et le terminal. Faudra que je vérifie pour en être certain. J'ai en attendant trouvé une solution annexe. J'ai crée une machine virtuelle sous Debian, ce qui au passage me permet de me familiariser avec Linux et la console, et j'utilise VSC ainsi, avec cette fonction Readline qui enfin est effective, et me donne cette possibilité à m'exercer dans la rédaction de mes fonctions, et avancer dans l'apprentissage du PHP.  
 
Merci pour cette aide apportée. Je pense que l'on peut estampiller ce problème comme [Résolu].


Message édité par Profil supprimé le 19-12-2021 à 11:12:28

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  PHP - Fonction Readline non détectée

 

Sujets relatifs
Excel+PHP/Mysql[VBA] Fonction .Min
Envoi de mail par PHPResultat en fonction d'une date
Problème avec PHP 8résolu -*Problème de double quote dans paramètres fonction
Synchroniser la BD de 2 applis web PHP[PHP] Problème stylesheet CSS indisponible sur une page (MODEL MVC)
Probleme d'installation de PHP-8.0.0[PHP/MySQL] PDO - bindValue ça bind pas
Plus de sujets relatifs à : PHP - Fonction Readline non détectée


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR