Recommandé : "Tutoriel vidéo Vous voudrez peut-être corriger ces 5 habitudes de codage PHP !"
Après avoir effectué de nombreuses révisions de code, je vois souvent des erreurs en double, voici comment les corriger.
Un : tester si le tableau est vide avant de boucler
$items = []; // ... if (count($items) > 0) { foreach ($items as $item) { // process on $item ... } }
foreach
et les fonctions de tableau (array_*
) peuvent gérer des tableaux vides.
$items = []; // ... foreach ($items as $item) { // process on $item ... }
Deux : encapsuler le contenu du code dans une instruction if Résumé
function foo(User $user) { if (!$user->isDisabled()) { // ... // long process // ... } }
Ce n'est pas une situation spécifique à Vous voudrez peut-être corriger ces 5 habitudes de codage PHP !, mais je la rencontre souvent. Vous pouvez réduire l’indentation en revenant plus tôt.
Toutes les méthodes principales sont au premier niveau d'indentation
function foo(User $user) { if ($user->isDisabled()) { return; } // ... // 其他代码 // ... }
Trois : Appelez la méthode isset plusieurs fois
Vous pouvez rencontrer les situations suivantes :
$a = null; $b = null; $c = null; // ... if (!isset($a) || !isset($b) || !isset($c)) { throw new Exception("undefined variable"); } // 或者 if (isset($a) && isset($b) && isset($c) { // process with $a, $b et $c } // 或者 $items = []; //... if (isset($items['user']) && isset($items['user']['id']) { // process with $items['user']['id'] }
Nous avons souvent besoin de vérifier si une variable a été définie. Vous voudrez peut-être corriger ces 5 habitudes de codage PHP ! fournit la fonction isset qui peut être utilisée pour détecter la variable, et la fonction peut accepter plusieurs paramètres à la fois, donc le code suivant peut être meilleur. :
$a = null; $b = null; $c = null; // ... if (!isset($a, $b, $c)) { throw new Exception("undefined variable"); } // 或者 if (isset($a, $b, $c)) { // process with $a, $b et $c } // 或者 $items = []; //... if (isset($items['user'], $items['user']['id'])) { // process with $items['user']['id'] }
Quatre : Utiliser les méthodes echo et sprintf ensemble
$name = "John Doe"; echo sprintf('Bonjour %s', $name);
Ce code est peut-être souriant, mais il m'est arrivé de l'écrire pendant un moment. Et j'en vois encore beaucoup ! Au lieu de combiner echo
et sprintf
, on peut simplement utiliser la méthode printf
.
$name = "John Doe"; printf('Bonjour %s', $name);
Cinq : Vérifier si une clé existe dans un tableau en combinant deux méthodes
$items = [ 'one_key' => 'John', 'search_key' => 'Jane', ]; if (in_array('search_key', array_keys($items))) { // process }
La dernière erreur que je vois souvent est entre in_array
et array_keys
Utilisé en combinaison. Tous ces éléments peuvent être remplacés en utilisant array_key_exists
.
$items = [ 'one_key' => 'John', 'search_key' => 'Jane', ]; if (array_key_exists('search_key', $items)) { // process }
On peut également utiliser isset
pour vérifier si la valeur n'est pas null
.
if (isset($items['search_key'])) { // process }
Adresse originale : https://dev.to/klnjmm/5-bad-habits-to-lose-in-php-2j98
Adresse de traduction : https:/ /learnku.com/php/t/49583
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!