IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Tutoriel pour apprendre à utiliser le framework Laravel 4


précédentsommairesuivant

XXIII. Chapitre 23 : Les helpers

Cette liste des helpers avait été établie avant documentation, je la laisse en essayant de la compléter au mieux…

XXIII-A. La classe « HTML »

XXIII-A-1. La méthode « entities »

Cette méthode utilise la méthode htmlentities avec l'option ENT_QUOTES avec l'encodage UTF-8 :

 
Sélectionnez
Route::get('/', function() {
    return HTML::entities('L\'enfant est <strong>gros</strong>');
});

Affiche :

 
Sélectionnez
L'enfant est <strong>gros</strong>

Avec ce code HTML :

 
Sélectionnez
L&#039;enfant est &lt;strong&gt;gros&lt;/strong&gt;

Notez que l'helper « e » fait exactement la même chose avec une syntaxe plus légère.

XXIII-A-1-a. Méthode « decode »

C'est l'inverse de la précédente :

 
Sélectionnez
Route::get('/', function() {
    return HTML::decode('L&#039;enfant est &lt;strong&gt;gros&lt;/strong&gt;');
});

Qui donne :

 
Sélectionnez
L'enfant est <strong>gros</strong>

Avec le code HTML :

 
Sélectionnez
L'enfant est <strong>gros</strong>
XXIII-A-1-b. Méthode « image »

Cette méthode permet de générer une balise <img> :

 
Sélectionnez
Route::get('/', function() {
    return HTML::image('img/bateau.jpg');
});

Qui génère :

 
Sélectionnez
<img src="http://localhost/laravel/public/img/bateau.jpg">

On dispose de deux autres paramètres, le premier pour l'attribut alt, le second pour un tableau avec tous les attributs que l'on veut :

 
Sélectionnez
Route::get('/', function() {
    return HTML::image('img/bateau.jpg', 'bateau', array('height' => 42, 'width' => 42));
});

Qui génère :

 
Sélectionnez
<img src="http://localhost/laravel/public/img/bateau.jpg" height="42" width="42" alt="bateau">
XXIII-A-1-c. Méthode « link »

Cette méthode permet de générer une balise <a> :

 
Sélectionnez
Route::get('/', function() {
    return HTML::link('pages/page1.html');
});

Qui génère :

 
Sélectionnez
<a href="http://localhost/laravel/public/pages/page1.html">http://localhost/laravel/public/pages/page1.html</a>

On dispose de trois autres paramètres, le premier pour le titre, le second pour un tableau avec tous les attributs que l'on veut, et le troisième pour passer en mode sécurisé :

 
Sélectionnez
Route::get('/', function() {
    return HTML::link('pages/page1.html', 'page1', array('target' => '_blank'), true );
});

Qui génère :

 
Sélectionnez
<a href="https://localhost/laravel/public/pages/page1.html" target="_blank">page1</a>
XXIII-A-1-d. Méthode « secureLink »

C'est la même méthode que la précédente mais le dernier paramètre n'existe plus et on est d'office en mode sécurisé.

XXIII-A-1-e. Méthode « script »

Cette méthode génère une balise script :

 
Sélectionnez
Route::get('/', function() {
    return HTML::script('js/main.js');
});

Code généré :

 
Sélectionnez
<script src="http://localhost/laravel/public/js/main.js"></script>

Un deuxième paramètre permet de définir des attributs avec un tableau :

 
Sélectionnez
Route::get('/', function() {
    return HTML::script('js/main.js', array('charset' => 'UTF-8'));
});

Résultat :

 
Sélectionnez
<script charset="UTF-8" src="http://localhost/laravel/public/js/main.js"></script>
XXIII-A-1-f. Méthode « style »

Cette méthode permet de générer un lien vers une feuille de style :

 
Sélectionnez
Route::get('/', function() {
    return HTML::style('ccc/main.css');
});

Code généré :

 
Sélectionnez
<link media="all" type="text/css" rel="stylesheet" href="http://localhost/laravel/public/ccc/main.css">

Un deuxième paramètre permet de définir des attributs dans un tableau :

 
Sélectionnez
Route::get('/', function() {
    return HTML::style('ccc/main.css', array('disabled' => 'true'));
});

Code généré :

 
Sélectionnez
<link disabled="true" media="all" type="text/css" rel="stylesheet" href="http://localhost/laravel/public/ccc/main.css">
XXIII-A-1-g. Méthode « linkRoute »

Cette méthode permet de générer un lien vers une route :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
Route::get('/', function() {
    return HTML::linkRoute('log');
});
Route::get('login', array('as' => 'log', function() {
    return View::make('hello');
}));
 
Sélectionnez
<a href="http://localhost/laravel/public/login">http://localhost/laravel/public/login</a>

On dispose de trois autres paramètres : un pour le titre, un autre pour les paramètres, et un dernier pour les attributs :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
Route::get('/', function() {
    return HTML::linkRoute('log', 'log', array('nom' => 'Dupont'), array('target' => '_blank'));
});
Route::get('login', array('as' => 'log', function() {
    return View::make('hello');
}));
 
Sélectionnez
<a href="http://localhost/laravel/public/login?nom=Dupont" target="_blank">log</a>
XXIII-A-1-h. Méthode « linkAction »

Cette méthode est calquée sur la précédente mais on pointe cette fois une action d'un contrôleur :

 
Sélectionnez
Route::get('/', function() {
    return HTML::linkAction('LivresController@create', 'create', array('nom' => 'Dupont'), array('target' => '_blank'));
});
 
Sélectionnez
<a href="http://localhost/laravel/public/livres/create?nom=Dupont" target="_blank">create</a>
XXIII-A-1-i. Méthode « ol »

Cette méthode permet de générer une liste ordonnée :

 
Sélectionnez
Route::get('/', function() {
    return HTML::ol(array('un', 'deux', 'trois'));
});
 
Sélectionnez
1.
2.
3.
4.
5.
<ol>
    <li>un</li>
    <li>deux</li>
    <li>trois</li>
</ol>

Vous avez un second paramètre pour les attributs :

 
Sélectionnez
Route::get('/', function() {
    return HTML::ol(array('un', 'deux', 'trois'), array('class' => 'liste'));
});
 
Sélectionnez
1.
2.
3.
4.
5.
<ol class="liste">
    <li>un</li>
    <li>deux</li>
    <li>trois</li>
</ol>
XXIII-A-1-j. Méthode « ul »

Cette méthode est calquée sur la précédente :

 
Sélectionnez
Route::get('/', function() {
    return HTML::ul(array('un', 'deux', 'trois'), array('class' => 'liste'));
});
 
Sélectionnez
1.
2.
3.
4.
5.
<ul class="liste">
    <li>un</li>
    <li>deux</li>
    <li>trois</li>
</ul>
XXIII-A-1-k. Les macros

Vous pouvez créer une macro quelconque :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
HTML::macro('mon_div', function() {
    return "<div class='contain'>";
});
Route::get('/', function() {
    return HTML::mon_div();
});
 
Sélectionnez
<div class='contain'>

XXIII-A-2. Les URL

XXIII-A-2-a. Méthode « url »

La première méthode, la plus simple, est url :

 
Sélectionnez
Route::get('/', function() {
    return url();
});
 
Sélectionnez
http://localhost/laravel/public

On peut transmettre un chemin en premier paramètre :

 
Sélectionnez
Route::get('/', function() {
    return url('test');
});
 
Sélectionnez
http://localhost/laravel/public/test

Le deuxième paramètre sert à passer des éléments pour l'URL :

 
Sélectionnez
Route::get('/', function() {
    return url('test', array('article', 'id'));
});
 
Sélectionnez
http://localhost/laravel/public/test/article/id

Le troisième paramètre sert à passer en mode sécurisé :

 
Sélectionnez
Route::get('/', function() {
    return url('test', array(), true);
});
 
Sélectionnez
https://localhost/laravel/public/test

Mais vous obtenez le même résultat plus simplement avec la méthode secure_url :

 
Sélectionnez
Route::get('/', function() {
    return secure_url('test');
});
XXIII-A-2-b. Méthode « route »

La méthode route permet de générer un URL pour une route :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
Route::get('/', function() {
    return route('log');
});
Route::get('login', array('as' => 'log', function() {
    return View::make('hello');
}));
 
Sélectionnez
http://localhost/laravel/public/login

Le deuxième paramètre permet d'ajouter des paramètres pour la route :

 
Sélectionnez
Route::get('/', function() {
    return route('log', array('nom' => 'Dupont'));
});
 
Sélectionnez
http://localhost/laravel/public/login?nom=Dupont
XXIII-A-2-c. Méthode « action »

Supposons que vous avez un contrôleur nommé LivresController et une action create, entrez ce code dans les routes :

 
Sélectionnez
Route::get('/', function() {
    return action('LivresController@create');
});
 
Sélectionnez
http://localhost/laravel/public/livres/create

Vous pouvez ajouter des paramètres :

 
Sélectionnez
Route::get('/', function() {
    return action('LivresController@create', array('nom' => 'Dupont', 'prenom' => 'Albert'));
});
 
Sélectionnez
http://localhost/laravel/public/livres/create?nom=Dupont&prenom=Albert
XXIII-A-2-d.  Méthode « asset »

La méthode asset permet de générer un URL pour les assets (ressources), par exemple :

 
Sélectionnez
Route::get('/', function() {
    return asset('assets/css/mon_css.css');
});

Résultat :

 
Sélectionnez
http://localhost/laravel/public/assets/css/mon_css.css

Un deuxième paramètre, par défaut à null, permet de passer en protocole sécurisé :

 
Sélectionnez
Route::get('/', function() {
    return asset('assets/css/mon_css.css', true);
});

Résultat :

 
Sélectionnez
https://localhost/laravel/public/assets/css/mon_css.css

Vous pouvez obtenir le même résultat avec la méthode secure_asset :

 
Sélectionnez
Route::get('/', function() {
    return secure_asset('assets/css/mon_css.css');
});

XXIII-A-3. Les liens

XXIII-A-3-a. Méthode « link_to »

La méthode link_to permet de créer un lien :

 
Sélectionnez
Route::get('/', function() {
    return link_to('test');
});
 
Sélectionnez
<a href="http://localhost/laravel/public/test">http://localhost/laravel/public/test</a>

Vous pouvez définir le titre avec le deuxième paramètre :

 
Sélectionnez
Route::get('/', function() {
    return link_to('test', 'titre');
});
 
Sélectionnez
<a href="http://localhost/laravel/public/test">titre</a>

Le troisième paramètre permet d'ajouter des attributs :

 
Sélectionnez
Route::get('/', function() {
    return link_to('test', 'titre', array('class' => 'deco'));
});
 
Sélectionnez
<a href="http://localhost/laravel/public/test" class="deco">titre</a>

Le quatrième paramètre (normalement à null) permet de passer en mode sécurisé :

 
Sélectionnez
Route::get('/', function() {
    return link_to('test', 'titre', array('class' => 'deco'), true);
});
 
Sélectionnez
<a href="https://localhost/laravel/public/test" class="deco">titre</a>
XXIII-A-3-b. Méthode « link_to_route »

La méthode link_to_route permet de créer un lien vers une route nommée :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
Route::get('/', function() {
    return link_to_route('log');
});
Route::get('login', array('as' => 'log', function() {
    return View::make('hello');
}));
 
Sélectionnez
<a href="http://localhost/laravel/public/login">http://localhost/laravel/public/login</a>

Vous pouvez définir le titre avec le deuxième paramètre :

 
Sélectionnez
Route::get('/', function() {
    return link_to_route('log', 'titre');
});
 
Sélectionnez
<a href=">http://localhost/laravel/public/login">titre</a>

Le troisième paramètre permet d'ajouter des attributs :

 
Sélectionnez
Route::get('/', function() {
    return link_to_route('log', 'titre', array('class' => 'deco'));
});
 
Sélectionnez
<a href=">http://localhost/laravel/public/login" class="deco">titre</a>

Le quatrième paramètre (normalement à null) permet de passer en mode sécurisé :

 
Sélectionnez
Route::get('/', function() {
    return link_to_route('log', 'titre', array('class' => 'deco'), true);
});
 
Sélectionnez
<a href=">https://localhost/laravel/public/login" class="deco">titre</a>
XXIII-A-3-c. Méthode « link_to_action »

La méthode link_to_action permet de créer un lien vers une action d'un contrôleur :

 
Sélectionnez
Route::get('/', function() {
    return link_to_action('LivresController@create');
});
 
Sélectionnez
<a href="http://localhost/laravel/public/livres/create">http://localhost/laravel/public/livres/create</a>

Vous pouvez définir le titre avec le deuxième paramètre :

 
Sélectionnez
Route::get('/', function() {
    return link_to_action('LivresController@create', titre);
});
 
Sélectionnez
<a href="http://localhost/laravel/public/livres/create">titre</a>

Le troisième paramètre permet d'ajouter des paramètres :

 
Sélectionnez
Route::get('/', function() {
    return link_to_action('LivresController@create', 'titre', array('nom' => 'Dupont'));
});
 
Sélectionnez
<a href="http://localhost/laravel/public/livres/create?nom=Dupont">titre</a>

Le quatrième paramètre permet de passer des attributs :

 
Sélectionnez
Route::get('/', function() {
    return link_to_action('LivresController@create', 'titre', array(), array('class' => 'deco'));
});
 
Sélectionnez
<a href="http://localhost/laravel/public/livres/create" class="deco">titre</a>

XXIII-A-4. Les chaînes de caractères

XXIII-A-4-a. Méthode « starts_with »

On peut savoir si une chaîne commence par une autre chaîne en utilisant la méthode starts_with :

 
Sélectionnez
Route::get('/', function() {
    return var_dump(starts_with('autoroute', 'au'));
});
 
Sélectionnez
bool(true)

Le paramètre peut être un tableau :

 
Sélectionnez
Route::get('/', function() {
    return var_dump(starts_with('autoroute', array('au', 'uy')));
});

Dans ce cas il suffit que l'un des éléments corresponde pour obtenir true.

XXIII-A-4-b. Méthode « ends_with »

Cette méthode est équivalente à la précédente, mais cette fois on teste la présence d'une chaîne à la fin d'une autre :

 
Sélectionnez
Route::get('/', function() {
    return var_dump(ends_with('autoroute', 'ute'));
});

Il est aussi possible de passer un tableau comme paramètre.

XXIII-A-4-c. Méthode « str_contains »

Avec cette méthode on peut savoir si une chaîne en contient une autre, quel que soit l'emplacement (début, milieu ou fin) :

 
Sélectionnez
Route::get('/', function() {
    return var_dump(str_contains('autoroute', 'tor'));
});
 
Sélectionnez
bool(true)

Il est aussi possible de passer un tableau comme paramètre.

XXIII-A-4-d. Méthode « str_is »

Cette méthode nous précise si une chaîne correspond à un certain masque :

 
Sélectionnez
Route::get('/', function() {
    return var_dump(str_is('assets/*', 'assets/css/main.css'));
});
 
Sélectionnez
bool(true)
XXIII-A-4-e. Méthode « str_random »

Cette méthode génère une chaîne aléatoire, par défaut elle comporte seize caractères :

 
Sélectionnez
Route::get('/', function() {
    return str_random();
});
 
Sélectionnez
XBe1bd4PwFCGEq4i

On peut ajouter un deuxième paramètre pour définir le nombre de caractères :

 
Sélectionnez
Route::get('/', function() {
    return str_random(10);
});
 
Sélectionnez
arKEVOLXkC

Cette méthode ne doit pas être utilisée pour le chiffrement !

XXIII-A-4-f. Méthode « snake_case »

Cette méthode permet de passer une chaîne en snake_case :

 
Sélectionnez
Route::get('/', function() {
    return snake_case('maClasse');
});
 
Sélectionnez
ma_classe

Remarquez que vous pouvez aussi changer le séparateur :

 
Sélectionnez
Route::get('/', function() {
    return snake_case('maClasse', '-');
});
 
Sélectionnez
ma-classe
XXIII-A-4-g. Méthode « camel_case »

C'est la méthode inverse de la précédente :

 
Sélectionnez
Route::get('/', function() {
    return camel_case('ma_classe');
});
 
Sélectionnez
maClasse
XXIII-A-4-h. Méthode « e »

Cette méthode utilise la méthode htmlentities avec l'option ENT_QUOTES avec l'encodage UTF-8 :

 
Sélectionnez
Route::get('/', function() {
    return e('L\'enfant est <strong>gros</strong>');
});

Elle affiche :

 
Sélectionnez
L'enfant est <strong>gros</strong>

Avec ce code HTML :

 
Sélectionnez
L&#039;enfant est &lt;strong&gt;gros&lt;/strong&gt;
XXIII-A-4-i. Méthode slug

Cette méthode transforme une phrase en chaîne utilisable pour un URL :

 
Sélectionnez
Route::get('/', function() {
    return Str::slug("Ma phrase pas évidente");
});
 
Sélectionnez
ma-phrase-pas-evidente
XXIII-A-4-j. Méthode title

Cette méthode met des majuscules aux mots :

 
Sélectionnez
Route::get('/', function() {
    return Str::title("Ma phrase pas évidente");
});
 
Sélectionnez
Ma Phrase Pas Évidente
XXIII-A-4-k. Méthode finish

Cette méthode ajoute une fin chaîne :

 
Sélectionnez
Route::get('/', function() {
    return str_finish("Ma phrase pas évidente", '.');
});
 
Sélectionnez
Ma phrase pas évidente.
XXIII-A-4-l. Méthode limit

Cette méthode limite la longueur d'une chaîne :

 
Sélectionnez
Route::get('/', function() {
    return str_limit("Ma phrase pas évidente", 10);
});
 
Sélectionnez
Ma phrase...

On peut choisir le style de fin ajouté avec un troisième paramètre :

 
Sélectionnez
Route::get('/', function() {
    return str_limit("Ma phrase pas évidente", 10, ' !!!');
});
 
Sélectionnez
Ma phrase !!!
XXIII-A-4-m. Méthode words

Cette méthode limite le nombre de mots d'une chaîne :

 
Sélectionnez
Route::get('/', function() {
    return Str::words("Ma phrase pas évidente", 3);
});
 
Sélectionnez
Ma phrase pas...

On peut choisir le style de fin ajouté avec un troisième paramètre :

 
Sélectionnez
Route::get('/', function() {
    return Str::words("Ma phrase pas évidente", 3, ' !!!');
});
 
Sélectionnez
Ma phrase pas !!!

XXIII-A-5. Les tableaux

XXIII-A-5-a. Méthode « array_divide »

Cette méthode permet de séparer un tableau en deux tableaux : l'un avec les clés et l'autre avec les valeurs :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
Route::get('/', function() {
    $tableau = array(
        'un' => 1,
        'deux' => 2,
        'trois' => 3
    );
    return var_dump(array_divide($tableau));
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
array(2) { 
    [0]=> array(3) { 
        [0]=> string(2) "un"
        [1]=> string(4) "deux"
        [2]=> string(5) "trois"
    } 
    [1]=> array(3) { 
        [0]=> int(1) 
        [1]=> int(2) 
        [2]=> int(3) 
    }
}
XXIII-A-5-b. Méthode « head »

Cette méthode retourne le premier élément d'un tableau :

 
Sélectionnez
1.
2.
3.
4.
Route::get('/', function() {
    $tableau = array(1, 2, 3);
    dd(head($tableau));
});
 
Sélectionnez
int(1)

En fait c'est la méthode reset de PHP qui est utilisée.

XXIII-A-5-c. Méthode « last »

Cette méthode retourne le dernier élément d'un tableau :

 
Sélectionnez
1.
2.
3.
4.
Route::get('/', function() {
    $tableau = array(1, 2, 3);
    dd(last($tableau));
});
 
Sélectionnez
int(3)
XXIII-A-5-d. Méthode « array_dot »

Cette méthode aplatit un tableau multidimensionnel en concaténant les clés en utilisant un point :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    return var_dump(array_dot($tableau));
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
array(4) { 
    ["0.0"]=> string(1) "0"
    ["0.1"]=> string(1) "1"
    ["1.0"]=> string(1) "a"
    ["1.1"]=> string(1) "b"
}
XXIII-A-5-e. Méthode « array_fetch »

Cette méthode fait l'inverse de la précédente :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
Route::get('/', function() {
    $tableau['0.0'] = "0";
    $tableau['0.1'] = "1";
    $tableau['1.0'] = "a";
    $tableau['1.1'] = "b";
    return var_dump(array_fetch($tableau, '0'));
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
array(4) { 
    [0]=> string(1) "0"
    [1]=> string(1) "1"
    [2]=> string(1) "a"
    [3]=> string(1) "b"
}
XXIII-A-5-f. Méthode « array_flatten »

Cette méthode aplatit un tableau multidimensionnel :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    return var_dump(array_flatten($tableau));
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
array(4) { 
    [0]=> string(1) "0"
    [1]=> string(1) "1"
    [2]=> string(1) "a"
    [3]=> string(1) "b"
}
XXIII-A-5-g. Méthode « array_first »

Cette méthode permet de trouver le premier élément d'un tableau, qui correspond à un test passé par une fonction de rappel :

 
Sélectionnez
1.
2.
3.
4.
5.
Route::get('/', function() {
    $ma_fonction = function ($key, $value) { return $value > 0; };
    $tableau = array(0, 1, 2);
    return var_dump(array_first($tableau, $ma_fonction));
});
 
Sélectionnez
int(1)
XXIII-A-5-h. Méthode « array_only »

Cette méthode extrait des éléments d'un tableau à partir d'un tableau de clés et retourne un tableau :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
Route::get('/', function() {
    $tableau = array(
        'un' => 1,
        'deux' => 2,
        'trois' => 3,
        'quatre' => 4
    );
    return var_dump(array_only($tableau, array('deux', 'quatre')));
});
 
Sélectionnez
1.
2.
3.
4.
array(2) { 
    ["deux"]=> int(2) 
    ["quatre"]=> int(4)
}
XXIII-A-5-i. Méthode « array_except »

Cette méthode extrait des éléments d'un tableau à partir d'un tableau de clés et retourne un tableau en excluant les éléments dont les clés sont transmises :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
Route::get('/', function() {
    $tableau = array(
        'un' => 1,
        'deux' => 2,
        'trois' => 3,
        'quatre' => 4
    );
    return var_dump(array_except($tableau, array('deux', 'quatre')));
});
 
Sélectionnez
1.
2.
3.
4.
array(2) { 
    ["un"]=> int(1) 
    ["trois"]=> int(3)
}
XXIII-A-5-j. Méthode « array_get »

Cette méthode récupère un élément d'un tableau en utilisant la syntaxe avec un point séparateur :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    return var_dump(array_get($tableau, '1.0'));
});
 
Sélectionnez
string(1) "a"
XXIII-A-5-k. Méthode « array_set »

Cette méthode affecte une valeur à un élément d'un tableau en utilisant la syntaxe avec un point séparateur :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    array_set($tableau, '1.0', "d");
    dd($tableau);
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
array(2) { 
  [0]=> array(2) { 
    [0]=> string(1) "0"
    [1]=> string(1) "1"
  } 
  [1]=> array(2) { 
    [0]=> string(1) "d"
    [1]=> string(1) "b" }
}
XXIII-A-5-l. Méthode « array_forget »

Cette méthode supprime un élément d'un tableau en utilisant la syntaxe avec un point séparateur :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    array_forget($tableau, '1.0');
    return var_dump($tableau);
});
 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
array(2) { 
    [0]=> array(2) { 
        [0]=> string(1) "0"
        [1]=> string(1) "1"
    } 
    [1]=> array(1) {
        [1]=> string(1) "b"
    }
}
XXIII-A-5-m.  Méthode « array_pull »

Cette méthode supprime un élément d'un tableau en utilisant la syntaxe avec un point séparateur et renvoie cette valeur :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
Route::get('/', function() {
    $tableau[0][0] = "0";
    $tableau[0][1] = "1";
    $tableau[1][0] = "a";
    $tableau[1][1] = "b";
    return array_pull($tableau, '1.0');
});

Au retour on a la valeur retirée 'a'.

XXIII-A-5-n. Méthode « array_pluck »

Cette méthode crée un tableau avec les valeurs qui ont la même clé, et qui ont été récupérées dans des tableaux emboîtés (bon c'est plus simple quand on regarde l'exemple Image non disponible) :

 
Sélectionnez
1.
2.
3.
4.
5.
Route::get('/', function() {
  $tableau[0][0] = "un";
  $tableau[1][0] = "deux";
  dd(array_pluck($tableau, 0));
});
 
Sélectionnez
1.
2.
3.
4.
array(2) { 
  [0]=> string(2) "un"
  [1]=> string(4) "deux"
}

précédentsommairesuivant

Copyright © 2017 Laravel. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.