Maison  >  Article  >  cadre php  >  Dix fonctions d'assistance Laravel recommandées

Dix fonctions d'assistance Laravel recommandées

步履不停
步履不停original
2019-06-19 11:28:402856parcourir

Dix fonctions d'assistance Laravel recommandées

Laravel comprend diverses fonctions d'assistance globales. Laravel comprend un certain nombre de fonctions d'assistance que vous pouvez utiliser pour rationaliser votre flux de travail de développement. Ici, je vais écrire les 10 meilleures fonctions d'assistance de Laravel que j'utilise pour faciliter mon développement. Vous devez envisager de les utiliser lorsque cela est nécessaire.

Vous pouvez également consulter toute la documentation officiellefonctions d'assistance de Laravel.

array_dot()

array_dot() La fonction d'assistance array_dot() vous permet Les tableaux multidimensionnels sont convertis en tableaux unidimensionnels en utilisant la notation par points. La fonction

$array = [
    'user' => ['username' => 'something'],
    'app' => ['creator' => ['name' => 'someone'], 'created' => 'today']
];

$dot_array = array_dot($array);

// [user.username] => something, [app.creator.name] => someone, [app.created] => today

array_get()

array_get() récupère les valeurs d'un tableau multidimensionnel en utilisant la notation par points.

$array = [
    'user' => ['username' => 'something'],
    'app' => ['creator' => ['name' => 'someone'], 'created' => 'today']
];

$name = array_get($array, 'app.creator.name');

// someone

Si la clé n'existe pas, la fonction array_get() accepte également un troisième paramètre facultatif comme valeur par défaut.

$name = array_get($array, 'app.created.name', 'anonymous');

// anonymous

public_path()

public_path() Renvoie le chemin absolu complet vers le répertoire public dans votre application Laravel. Vous pouvez également transmettre le chemin d'accès à un fichier ou à un répertoire dans le répertoire public pour obtenir le chemin absolu de la ressource. Il ajoutera simplement public_path() à vos paramètres.

$public_path = public_path();

$path = public_path('js/app.js');

Str::orderedUuid()

Str::orderedUuid() La fonction génère d'abord un uuid d'horodatage. Cet uuid peut être stocké dans une colonne de base de données indexée. Ces UUID sont créés sur la base d'horodatages, ils maintiennent donc votre contenu indexé. Lors de l'utilisation de ceci dans Laravel 5.6, RamseyUuidExceptionUnsatisfiedDependencyException est généré. Pour résoudre ce problème, exécutez simplement la commande suivante pour utiliser le package moontoast/math : 

composer require "moontoast/math"
use Illuminate\Support\Str;

return (string) Str::orderByUuid()

// A timestamp first uuid

str_plural()

str_plural la fonction convertit une chaîne au pluriel. Cette fonctionnalité prend uniquement en charge l'anglais. La fonction

echo str_plural('bank');

// banks

echo str_plural('developer');

// developers

route()

route() génère l'URL de l'itinéraire pour l'itinéraire spécifié.

$url = route('login');

Si la route accepte des paramètres, vous pouvez simplement les transmettre comme deuxième paramètre à un tableau.

$url = route('products', ['id' => 1]);

Si vous souhaitez générer une URL relative au lieu d'une URL absolue, vous pouvez passer false comme troisième paramètre.

$url = route('products', ['id' => 1], false);

tap()

tap() La fonction accepte deux paramètres : une valeur et une fermeture. La valeur sera transmise à la fermeture et la valeur sera renvoyée. La valeur de retour de fermeture n'a pas d'importance.

$user = App\User::find(1);

return tap($user, function($user) {
    $user->update([
        'name' => 'Random'
    ]);
});

Il ne renvoie pas de valeur booléenne, mais User Model .

Si vous ne réussissez pas de fermeture, vous pouvez également utiliser n'importe quelle méthode de User Model. La valeur de retour sera toujours une valeur quelle que soit la méthode qui la renvoie réellement. Dans l'exemple ci-dessous, il renverra User Model au lieu d'un booléen. La méthode update renvoie une valeur booléenne, mais puisque tap est utilisée, elle renverra User Model.

$user = App\User::find(1);

return tap($user)->update([
    'name' => 'SomeName'
]);

dump()

dump() La fonction videra la variable donnée et prend également en charge la transmission de plusieurs variables en même temps. Ceci est très utile pour le débogage. La fonction

dump($var1);
dump($var1, $var2, $var3);

str_slug()

str_slug() génère un slug compatible avec les URL à partir de la chaîne donnée. Vous pouvez utiliser cette fonctionnalité pour créer un slug pour votre article ou le titre de votre produit.

$slug = str_slug('Helpers in Laravel', '-');

// helpers-in-laravel

optional()

optional() La fonction accepte un paramètre et vous pouvez appeler la méthode du paramètre ou accéder à la propriété. Si l'objet transmis est nul, les méthodes et propriétés renverront null au lieu de provoquer une erreur ou de lever une exception.

$user = User::find(1);

return optional($user)->name;

Pour plus d'articles techniques liés à Laravel, veuillez visiter la colonne Tutoriel Laravel pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn