Catégorie : Programmation Web

programmation Web

  • 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 !

  • Comment mettre à jour PHP dans Apache

    Dans mon précédent article sur Laravel, je vous présentais une formation complète pour l’installer et l’utiliser.

    Lors du suivi de cette formation, et de l’installation de Laravel sur mon ordinateur, j’ai eu le problème de la page blanche. Ce problème était visible sur toutes les pages, et était issu d’une erreur 500.

    Après avoir regardé quelques détails, j’ai pu remarqué de la version de PHP de mon Apache était la 7.0. Hors, la version minimale du PHP accepté par Laravel était la 7.1.3.

    J’ai donc trouvé sur stackoverflow la solution à mon problème : How to update apache’s php ?

    dans mon cas, il suffisait de faire :


    sudo a2dismod "php7.0"
    sudo a2enmod "php7.2"

    Avec php 7.2, je n’ai plus eu de problème.

    A faire partager.

  • 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.

  • « For development purposes only » sur Google Maps

    Récemment, sur un de mes scripts sur Google Maps, j’ai pu voir le message suivant : For development purposes only.

    Ce message est apparu après l’annonce de Google de rendre Google Maps payant. J’en avait parlé dans l’article sur les alternatives à Google Maps.

    Je ne sais pas si il y a un lien entre les deux mais, si vous avez le message suivant, il existe un lien qui vous explique quoi faire. Le voici : Google maps is grayed out showing « For development purposes only ».

    La cause est la suivante : You do not have a valid Google Maps license, ou en français, Vous n’avez pas une licence valide pour Google Maps.
    Il suffit donc de vous chercher une licence.

    Profitez-en bien !