Catégorie : Langages Web

langages Web

  • Clean Code adapté au PHP

    Clean Code adapté au PHP

    Il y a quelques semaines, j’ai vu passé un lien d’un dépôt Github assez intéressant.

    Il traitait du concept de Clean Code adapté au PHP.

    C’est un repository qui est inspiré de celui du clean-code-javascript, et il est traduit de l’anglais du Clean Code PHP de Jupeter.

     

    Les principes de ce dépôt, sont tirés du livre de Robert C. Martin Clean Code, et sont adapté au PHP.
    Pour les développeurs qui veulent apprendre les bonnes pratiques, c’est un bon premier guide pour produire des logiciels lisibles, réutilisables, et refactorable en PHP.

    Vous pourrez remarquer des exemples de code en PHP, et la plupart ne fonctionnent qu’avec PHP 7.1+.

    profitez-en bien !

  • Cas d’utilisation des fonctions explode et str_split

    Aujourd’hui, j’ai envie de parler de 2 fonctions PHP différentes, mais au fonctionnement assez proche.

    Je voudrais faire un parallèle entre ces fonctions, qui s’appellent explode(), et str_split().

    Fonction explode()

    Cette première fonction, explode($delimiter , $string), permet de couper n’importe quel chaîne de caractère en segments, et de retourner un tableau de chaîne. Les chaînes sont les segments en question.
    Le premier paramètre de cette fonction est un $delimiter, un caractère pris en compte pour la division de la chaîne de caractère en question. Cela peut être un espace vide, comme des caractères de ponctuation (virgule, point-virgule, tiret, etc…)
    Le deuxième paramètre, $string, est la chaîne de caractère qui sera divisé.

    Voici un exemple simple d’utilisation de cette fonction :

    // Exemple 1
    $pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
    $pieces = explode(" ", $pizza);
    echo $pieces[0]; // piece1
    echo $pieces[1]; // piece2

     

    Fonction str_split()

    La deuxième fonction, str_split($string), convertit directement une chaîne de caractères en tableau.
    Elle ne prend que la chaîne de caractère à convertir en paramètre (ou $string). Contrairement à la fonction explode, il n’y a pas de paramètre $delimiter.

    Voici un exemple d’utilisation de cette fonction :

    // Exemple 1
    $str = "Hello";
    $arr1 = str_split($str);
    print_r($arr1);

    Array
    (
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    )

    Cette fonction str_split est utilisable dans le cas particulier d’une scission complète d’une chaîne de caractère, alors que la fonction explode est utilisé qu’avec un delimiter.

    Je n’ai connu str_split qu’il y a quelques semaines, dans le cadre d’une résolution d’énigme en PHP.

    Conclusion

    J’espère vous avoir appris des choses par rapport à ces deux fonctions, ou au moins par rapport à l’une d’entre-elle.

    Il existe d’autres fonctions permettant de couper une chaîne en segments comme preg_split, mb_split, strtok. Chacune sont utilisable dans des situations spécifiques. Vous pouvez regarder leur page de doc, vous pourrez y découvrir des choses.

    Voici les liens vers la documentation de ces deux fonctions sur le site php.net :

     

    A la prochaine.

  • Utilisation de Composer pour l’autoloading

    Utilisation de Composer pour l’autoloading

    Introduction

    Dans les projets en PHP, nous avons souvent besoin d’un système d’autoloading.

    Au lieu de créer de zéro ce système d’autoloading en PHP, il suffit d’initialiser composer et de l’utiliser simplement.

    Voici les 3 étapes à suivre :

    Etape 1 : initialiser composer

    Dans le dossier contenant votre projet, vous aller initialiser composer en faisant un composer init.

    Vous remplissez les différentes informations : name, description, licence, etc…

    Voici un exemple de fichier composer.json que j’utilise :

    Dans le fichier principal de votre projet, index.php par convention, il est important de rajouter la ligne suivante :

    require ‘vendor/autoload.php’;

    Sinon, l’autoloading ne fonctionnera pas.

    Etape 2 : Ajout de l’autoload

    Dans le fichier composer.json généré, la partie à ajouter est la suivante : autoload.
    Vous pouvez recopier cette partie de mon exemple ci-dessus.
    psr-4 est la convention actuelle sur l’autoloading, et permet une meilleure gestion du chargement des classes et des interfaces de votre projet.

    Dans mon exemple, vous avez remarqué la ligne suivante : « App\\ »: « app/ ».
    Cela signifie que les classes du dossier app sont automatiquement chargé par PHP.

    Etape 3 : les derniers détails

    Pour finaliser tout cela, il reste quelques détails à ajouter.
    Dans chaque classes PHP du dossier app, il faut ajouter en début de script la ligne suivante :

    <?php
    namespace App;

    Dès que vous voulez utiliser une des classes de ce dossier app, il suffit d’utiliser les lignes de code telle que celle-ci :

    use App\nomDeLaClasse as nomDeLaClasse;

    Cela appellera automatique la classe ayant pour nom nomDeLaClasse, et vous pourrez l’utiliser sans problème.

  • Résolution d’énigme en PHP

    Résolution d’énigme en PHP

    Aujourd’hui, j’aimerai créer une nouvelle catégorie d’articles sur mon Blog, une catégorie montrant la résolution de problème via le développement.

    Le premier script présenté se trouve sur mon github à l’adresse suivante : https://github.com/Little-sumo-labs/Le-poids-des-chiffres.

    C’est un script résolvant une énigme mathématique. Son titre est Le poids des chiffres, que vous pouvez retrouver sur le site une-enigme.com.

    L’intitulé de l’énigme est la suivante :

    Chacun de ces chiffres ci-dessous pèse le poids indiqué au-dessous. Formez 3 nombres de 3 chiffres chacun qui représentent leur poids total ( exemple, 617 doit peser 617 Kg ).

    1 = 51 Kg
    2 = 307 Kg
    3 = 93 Kg
    4 = 522 Kg
    5 = 144 Kg
    6 = 28 Kg
    7 = 43 Kg
    8 = 93 Kg
    9 = 78 Kg

    Je ne vous donne pas la réponse dans cette article, je ne veux pas la spoiler.
    De toute façon,vous la retrouverez sur la page de l’énigme, et dans mon script.

     

    N’hésitez pas à me dire ce que vous en pensez !

  • Trouver la valeur la plus proche d’une autre, en PHP

    Introduction

    Aujourd’hui, j’inaugure un nouveau concept d’article sur ce blog.

    Le concept consiste à reprendre des articles existant, et à en faire une nouvelle version.

    L’exercice

    L’article d’aujourd’hui reprend un article extérieur à mon blog, mais je pourrai aussi reprendre prochainement des articles de mon blog.
    L’article est le suivant : Trouver la valeur la plus proche d’une autre en php.

    Je trouvais l’exercice de l’article intéressant, et je voulais y mettre un peu de ma patte. Vous pourrez vérifier le résultat sur mon github, sur le dépôt suivant : Little-sumo-labs/leplusprochede.

    Le but de l’exercice, comme dit plus tôt, est de trouver la valeur la plus proche d’une autre, en php.

    L’intitulé de l’exercice est le suivant :

    • Afficher 0 si aucunes données n’est fournie
    • Sinon on affiche la température la plus proche de 0. Si 2 entiers sont aussi proches de 0, on prend l’entier positif. Donc si on a le choix entre -5 et 5, on prend 5.
    • Le nombre de températures est compris entre 0 (inclus) et 10000 (non inclus).
    • Les valeurs sont fournies, séparées par un caractère spécifique.

    Conclusion

    A l’heure ou j’écris ces lignes, le script en est à sa version 1.

    Il répond entièrement à l’intitulé de l’exercice, mais il n’est pas impossible que je continue à le développer, et à l’améliorer. Je suis même ouvert à des proposition d’évolutions.

    J’ai même quelques idées d’applications que je pourrai mettre en place.

    N’hésitez pas à me dire si vous êtes intéressé, en commentaires ou par mail.