Cours de PHP MySQL
CLASS :
Les noms de class s’écrivent avec la première lettre de chaque mot en majuscules :
Ex : class MaClasse{} STUDLY CAPSE
Méthode = fonction dans une class
Les noms de méthodes s’écrivent avec la première lettre du premier mot en minuscule et la première lettre du mot d’après en >majuscule: CAMEL CASE
Ex : public function getId{}
Les constantes sont écrites entièrement en majuscules avec des underscores entre chaque mots, ex :
const MA_CONSTANTE.
Les constantes sont STATIC
Pour indenter sur php storm :
ctrl + alt + L
A partir d’une class, on peut créer autant d’objets que l’on veut
Instantiation = créer une instance de la class pour récupérer un objet (new avent la class)(créer un objet à partir d’une class), ex : $myObject = new MyClass(); $myObject est l’objet
Les 3 visibilités
PUBLIC -> disponible à l’intérieur ET à l’exterieur de la class
PRIVEE -> disponible à l’intérieur de la class uniquement
PROTEGEE -> disponible à l'intérieur d'une class qui étend une autre class contenant cette variable protégée
$this se rapporte à l’objet
SELF se rapporte à la class
Dans $article->getName; getName est l’attribut
$article->getName(); getName() est la méthode
Toutes les propriétés d’une class doivent être privée ou protected, pour respecter le principe d'encapsulation
Les getters et setters sont des méthodes public pour retourner et modifier la valeur de l’élément
//On définit App comme nom du fichier global, ensuite on retape copmposer install dans le terminal
Php brew à installer sur UN NOUVEAU PC Pour créer un nouveau port, il suffit de taper: php -S localhost:8080 Le logiciel Sequel Pro remplace phpmyadmin
Pour utiliser l’autoload, créer un namespace
Pour utiliser dump de symfony : composer require symfony/var-dumper
La fonction __CONSTRUCT permet de gérer des attributs par défaut dans une classe mais ne sont pas obligatoires
-> appelle un objet
:: appelle un statics
Lorsque qu’on appelle une class, ex : new class(1)
1 correspond au premier construct
Si on n’a pas l’auto complétion, il faut juste préciser le type au dessus avec un /**
Cmd + D
pour dupliquer une ligne
Pour update une bdd depuis le terminal :
vendor/bin/doctrine orm:schema-tool:update --dump-sql --force
Pour appeler une librairie symfony :
Composer require (nom de la librairie)
Pour voir tous les dossiers des 1er niveaux
tree -L 1
Pour utiliser un use automatiquement plutôt que d’appeler un lien complet vers une class par exemple, faire :
alt + entrer
sur le lien complet