Erreur de ligne de commande Codeigniter - Erreur fatale PHP : classe 'CI_Controller' introuvable
P粉916553895
P粉916553895 2023-09-18 22:52:11
0
2
756

Après avoir suivi les instructions du guide de l'utilisateur, je ne parviens pas à exécuter le script de test via la ligne de commande.

Mon contrôleur se trouve dans /var/www/mysite/application/controllers/

class Tools extends CI_Controller {

    public function message($to = 'World')
    {
        echo "Hello {$to}!".PHP_EOL;
    }
}

Dans un navigateur auquel je peux accéder

http://mysite/tools/message/ben

Cette fonction affiche correctement "Bonjour ben"

Depuis le terminal, je devrais pouvoir exécuter :

$ php index.php message de l'outil "Ben"

Mon terminal devrait afficher : "Bonjour Ben"

Cependant, j'obtiens l'erreur suivante :

Erreur fatale PHP : classe 'CI_Controller' introuvable dans /var/www/mysite/system/core/CodeIgniter.php à la ligne 233

Mon serveur est un LAMP Ubuntu standard. Codeigniter est également fourni en standard et je n'ai aucun problème à exécuter des scripts non CI via la ligne de commande.

Mon PHP n'est installé que dans /usr/bin/php <-- Cet article fait allusion au problème de l'exécution de CI directement à partir de usr/bin/php, mais je n'utilise pas de service PHP partagé et je ne comprends pas comment cela se produira. affecter PHP Comment l'exécution de scripts CI fait la différence.

Merci beaucoup pour votre aide par avance.

P粉916553895
P粉916553895

répondre à tous(2)
P粉099985373

Pour résoudre l'erreur « Classe 'CI_Controller' introuvable », essayez d'accéder à Application -> Config -> database.php et vérifiez les détails de la base de données tels que nom d'hôte, nom d'utilisateur, mot de passe et base de données.

P粉262073176

Résolu ! (Une partie du) problème est la journalisation des erreurs CodeIgniters.

Dans application/config/config.php, j'ai modifié les propriétés de configuration suivantes :

$config['log_threshold'] = 0;

Cela désactivera la journalisation et permettra $ php index.php l'exécution.

Si quelqu'un peut expliquer pourquoi CI affiche cette erreur uniquement sur CLI PHP, cela pourrait aider ceux qui rencontrent ce problème et doivent le résoudre via la journalisation des erreurs.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal