187 votes

CodeIgniter : Créer nouvelle d’assistance ?

J’ai besoin de beaucoup de tableaux de boucle de différentes manières et les afficher dans une page. Les baies sont générés par un module de classe. Je sais que ce n’est pas mieux pour inclure des fonctions sur « vues » et je veux savoir où insérer le fichier de fonctions.

Je sais que je peux « s’étendre » les aides, mais je ne veux pas étendre un programme d’assistance. Je veux genre de créer un programme d’assistance avec mes fonctions de boucle... Permet de l’appeler loops_helper.php

391voto

The Pixel Developer Points 6491

Un CodeIgniter helper est un fichier PHP avec de multiples fonctions. Ce n'est pas une classe

Créer un fichier et mettez le code suivant dans.

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

if ( ! function_exists('test_method'))
{
    function test_method($var = '')
    {
        return $var;
    }   
}

Enregistrer ce pour application/helpers/ . Nous l'appellerons "new_helper.php"

La première ligne existe pour s'assurer que le fichier ne peut pas être inclus et a couru à partir de l'extérieur de la CodeIgniter portée. Après tout c'est auto-explicatif.

À l'aide de l'assistant


Cela peut être dans votre contrôleur, modèle ou de la vue (pas de préférence)

$this->load->helper('new_helper');

echo test_method('Hello World');

Si vous utilisez cette fonction d'aide dans beaucoup d'endroits que vous pouvez charger automatiquement en l'ajoutant à la configuration de chargement automatique de fichiers.

$autoload['helper'] = array('new_helper');

-Mathieu

80voto

r4ccoon Points 820

vous avez ici après un certain temps hein ?

Je veux juste écrire certains codes qui permettent d’utiliser l’instance de CI à l’intérieur du programme d’assistance

18voto

Eduardo Chavira Points 196

Eh bien pour moi fonctionne seulement ajouter le texte « _helper » après dans le fichier php comme :

Codeiginiter Helpers

Et pour charger automatiquement le programme d’assistance dans le dossier application-> fichier autoload.php ajouter dans le tableau de l’assistance le nom sans « _helper » comme :

$autoload [« helper »] = array('comunes') ;

Et avec qui je peux utiliser les fonctions de l’Assistant

11voto

lima Points 498

Pour créer un nouveau helper vous pouvez suivre les instructions Du Pixel Développeur, mais mon conseil est de ne pas créer un helper juste de la logique requis par une partie d'une application particulière. Au lieu de cela, l'utilisation de cette logique dans le contrôleur pour définir les tableaux de finale prévu valeurs. Une fois que vous avez que, vous les passez à la vue en utilisant le Modèle d'Analyseur de Classe et (espérons-le), vous pouvez garder le point de vue propre de tout ce qui ressemble PHP en utilisant des variables de type simple ou variable paires de balises au lieu de les echos et foreachs. j'.e:

{blog_entries}
<h5>{title}</h5>
<p>{body}</p>
{/blog_entries}

au lieu de

<?php foreach ($blog_entries as $blog_entry): ?>
<h5><?php echo $blog_entry['title']; ?></h5>
<p><?php echo $blog_entry['body']; ?></p>
<?php endforeach; ?>

Un autre avantage de cette approche est que vous n'avez pas à vous inquiéter au sujet de l'ajout de l'exemple CI comme vous le feriez si vous utilisez des aides personnalisées à faire tout le travail.

3voto

Sumit Points 41

Créez un fichier avec le nom de la personne qui vous aide dans/applications/aides et ajoutez-le à l’autoload config file/load il manuellement.

Par exemple, placer un fichier nommé user_helper.php dans /application/helpers avec ce contenu :

Maintenant, vous pouvez soit charger le programme d’assistance via `` ou l’ajouter à la config de application/config/autoload.php.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X