J'essaie de "FAUx-Fork" un processus (un email étant envoyé via SMTP) dans mon application Web et l'application est construite sur Kohana. Je reçois une erreur - p> quand je regarde Le fichier Index.PHP de Kohana, je vois qu'il recherche une variable nommée Server_Name, mais je suppose que cela vient nul, car Kohana ne pouvait pas détecter cette valeur et la définir avant de courir. P> Toute idée Comment faire fonctionner Kohana via la ligne de commande? P> P> Avis: index non défini: nom_serveur code> p>
6 Réponses :
Autant que je sache, vous ne pouvez pas exécuter les fichiers Kohana directement dans la ligne de commande en raison de ses méthodes de bootstrap.
Vous pouvez faire 2 choses: exportez toutes les commandes comme des fonctions à l'extérieur de Kohana et exécutez-les de manière indépendante. P>
Quelque chose d'autre que vous pourriez faire est d'exécuter le bac à l'index.php situé dans le dossier principal de Kohana lors du passage du contrôleur $, ainsi que des variables de la méthode $ Il finit sur le bon objet où votre code est situé: p>
pour Kohana 2: p> kohana 3 p> Edit: strong>
Kohana a un excellent coureur de tâches CLI de la version 3.3 en tant que module officiel. Pour la version 3.2, il s'agit toujours d'un module non officiel. Je vous suggère d'utiliser celles-ci car ils donnent beaucoup d'options supplémentaires sur la course à partir de CLI: p>
Ce n'est pas vrai, vous peut i> Run Kohana à partir de la ligne de commande. Cette réponse ne devrait probablement pas être acceptée.
Cette réponse est à la fois fausse et vraie. En fait, j'ai expliqué que vous ne pouvez pas exécuter directement les fichiers Kohana. Mais vous pouvez les courir à la creuset l'index.php comme Zombor Byiath indique (sur les développeurs). Je conviens que j'aurais dû le phraser différemment. Édité maintenant ^^
Si vous utilisez Kohana 3, vous pouvez l'exécuter à partir du terminal.
php index.php --uri=controller/action
et kohana2 est juste Kohana a été construit pour fonctionner sur le CLI ainsi que sur le Web. P> php index.php contrôleur / méthode / param1 / param2 / etc code> p>
Après avoir examiné le code source Kohana3, j'ai trouvé qu'il dispose d'une prise en charge de CLI ( appellerait la méthode code> la liste code> dans System / Classes / Kohana / Cli.php Code>). Vous pouvez passer 3 options (URI, méthode, obtenir, poster). Donc: - P>
$ php index.php --uri = "éléments / liste"
code> p>
contrôleur_items code>. p>
Pour quiconque a le même problème que moi. Cette fonctionnalité a été supprimée à Kohana 3.3. Vous ne pouvez plus passer l'URI comme ça. :(
Pour Kohana 3, consultez ces DOCS et Source . P>
Ce lien ne semble pas avoir une réponse valide ou des instructions utiles sur le processus d'exécution de Kohana 3 sur CLI.
@Alejandro C'est la seule documentation de CLI officielle i> CLI que je pouvais trouver. Kohana est gros sur leur source d'être la documentation elle-même.
J'ai eu un problème similaire
Avez-vous ou quelqu'un a ajouté le Si oui soit enlevez Le code en dehors du Server_name code> au fichier
index.php code>? p>
index.php code> (et ou bootstrap) ou vous pouvez l'envelopper dans un p>
Quelle version de Kohana utilisez-vous?
Vous êtes très proche dans ce petit morceau de code, il suffit d'ajouter --uri = devant la commande $ de la commande
exec ('php index.php --uri ='. $ commande. '> / Dev / NULL & ', $ Erreurs, $ Réponse); Code> Mais depuis le reste de votre question, je pense qu'il serait peut-être préférable d'utiliser un cronjob pour cela ou si vous utilisez Kohana3, utilisez ses capacités HMVC.
Maintenant, vous êtes capable de faire uniquement ceci:
php index.php --task = démo code>, où cette démo est enregistrée dans
classes / tâche / démo.php code> en tant que
La classe Task_Demo étend minion_task code>. Pour plus d'informations, cochez ici kohanaframework.org/3.3/guide/minion/tasks