12
votes

Chargement de classes personnalisées dans CodeDigniter?

Commencez simplement à utiliser Codedigniter et j'aimerais importer certaines de mes anciennes classes à utiliser dans un nouveau projet. Cependant, je ne veux pas trop les modifier pour s'intégrer à la manière de faire des choses, et j'aimerais pouvoir continuer à utiliser les fonctionnalités autocompresses de NetBeans, ce qui ne fonctionne pas trop bien avec CI. < / p>

Ainsi, quelle est la meilleure façon de charger des classes et des fichiers de classe personnalisés dans CodeDIGNITiter sans avoir à utiliser les mécanismes de chargement de la bibliothèque / du modèle?

Je m'excuse si cela est quelque chose que je devrais pouvoir trouver rapidement, mais je ne peux pas sembler trouver ce que je suis après. Tout ce que je vois, c'est juste me dire comment traverser CI.


0 commentaires

5 Réponses :


10
votes

Je dirais que vous écrivez au moins une classe de wrapper qui pourrait nécessiter les classes et instancier les objets et les rendre accessibles. Ensuite, vous pourriez probablement modifier une telle bibliothèque et l'utiliser au besoin.

Je vous recommanderais que vous ayez au moins essayé de les faire correspondre à la manière CI, car cela vous permettra de vous rendre la vie beaucoup plus facile. J'ai été en quelque sorte dans la même position et j'ai appris juste cela en cours de route.


1 commentaires

Comme il s'agit de 3 classes pour l'abstraction de DB & Memcache Access, j'ai pris l'approche que j'ai prise en charge. Ce n'était pas vraiment un problème technique, plus d'une question de conception.



-4
votes

Si vous commencez à utiliser CodeDigniter, vous devez peut-être vérifier Kohana (http://kohanaframework.org/). Il est très similaire à celui de CodeIdIditer à bien des égards, mais il charge des cours de manière normale (à l'aide de nouveaux noms de classe ()) afin que les fonctions d'autocomplétion des NetBeans devraient fonctionner normalement.


1 commentaires

Seul 2.x a toutes les similitudes de CI, la branche 3.x est totalement différente. Ils ne partagent vraiment que le fait qu'ils utilisent php et mvc ...



16
votes

Les bibliothèques sont faciles à écrire, mais elles ont quelques restrictions. Les constructeurs ne peuvent prendre qu'un tableau seulement comme paramètre et il est supposé qu'une seule classe existera par fichier.

Vous pouvez inclure l'une de vos propres classes pour travailler avec eux, mais cela ne veut que PHP OFC :) xxx

ou configurer une fonction __AutoLoad () dans votre config.php (meilleur endroit pour qu'il soit) et vous pouvez avoir accès à vos classes sans avoir à les inclure.


1 commentaires

y compris vous des fichiers dans config est un mauvais appel



22
votes

Pour le faire CodeInter Way, placez vos classes personnalisées dans les bibliothèques Dossier de CodeDigniter. Ensuite, utilisez-le en ajoutant cette classe comme bibliothèque de votre contrôleur, comme celui-ci: xxx pré>

Utilisation dans le contrôleur: strong> p>

$this->load->library('someclass');


0 commentaires

0
votes
$mark=$report->detail($user);

0 commentaires