Salut Graphikart ! Bravo pour cette série de vidéos ! Franchement je ne sais pas comment tu fais pour connaître autant de technos différentes
@powergrab97823 жыл бұрын
4:40 J'ai un message d'erreur lorsque j'exécute la commande : "Directory public/ does not exist." J'ai juste taper localhost, car c'est comme ça que j'y accède, mais ça m'affiche ce message d'erreur. Quelqu'un aurait-il une solution à ce problème ? Merci.
@MDMSCOOPS6 ай бұрын
Je suis là en 2024
@kurisu-game7 жыл бұрын
Merci pour ce tutoriel super intéressant, d'autant que je souhaite créer mon propre framework donc merci beaucoup ;)
@dranostyippo72777 жыл бұрын
Bonjour, Comment faites-vous pour avoir accès aux interfaces, traits et classes extérieures avec votre IDE ? Je suis constamment obligé de vérifier les docs pour ça et écrire les 'use' à la main devient redondant. Merci.
@SekaiofKangae6 жыл бұрын
Bonjour, j'ai un problème à partir de 9:00 , lorsque je teste l'url, j'obtiens un "syntax error, unexpected ':' ", j'ai vu que quelqu'un avait le même problème ci-dessous, et remplacer la ligne ou il y a l'erreur header(string:'Location: ' . substr($uri, start:0, length:-1)); par header('location: ' . substr($uri,0 , -1)); Mais si je fais ça, une nouvelle erreur arrive: unexpected 'header' . J'ai même essayé d'enlever du coup la ligne suivante avec moved permanently mais la c'est unexpected 'exit' qui apparait... J'utilise wamp avec la version php 7.1.9 Voici mon code: class App { public function run() { //url sans slashs $uri = $_SERVER['REQUEST_URI']; if(!empty($uri) && $uri[-1] === "/") { header('location: ' . substr($uri,0 , -1)); header(string:'HTTP/1.1 301 Moved Permanently'); exit(); } echo 'CC'; } } Si quelqu'un peut m'aider ou a eu le même problème j'en serais reconnaissante, ce tuto m'intéresse beaucoup, je trouve ça dommage d'en cherche un autre que celui de grafikart... Merci d'avance
@GGTcommunity3 жыл бұрын
ne mettez pas les trucs qui sont grisé, c'est un truc de l'ide pour lui dire ce qui faut mettre dedans, ce n'est pas du code
@ridwanemoussa46573 жыл бұрын
Bonjour Grafikart! j'ai une erreur $this->assertContains('Bienvenue sur le Blog',(string)$response->getBody()); TypeError: Argument 2 passed to PHPUnit\Framework\Assert::assertContains() must be iterable, string given, called in
@yaen74882 жыл бұрын
Ta résolu ton problème ?
@k1ry99555 жыл бұрын
Bonjour et merci pour toutes les vidéos. Mais j' aimerai vraiment savoir quel module apache fait que toute requête: "mon-site/requête" aboutie a un 404 sur mon localhost ou mon serv ovh. Avec le serveur PHP je n' ai aucun problème et j' ai tout qui fonctionne comme dans la vidéo.
@djumaiddy60736 жыл бұрын
t'e vraiment le meilleur mec.big up
@kamssplayer11627 жыл бұрын
Bonjour, je tente de suivre votre tutoriel, mais arrivé au moment ou je charche ServerRequestInterface cela me renvoi l 'erreur suivante. Catchable fatal error: Argument 1 passed to Framework\App::run() must be an instance of Psr\Http\Message\ServerRequestInterface, none given une idée svp ?
@ratila676 жыл бұрын
Hello, lorsque je souhaite lancé mon serveur, celui ci utilise la version 7.0.10 de PHP, comment faire pour qu'il utilise la même version que vous ? Merci
@stevendoesnt6636 жыл бұрын
Bonjour Grafikart, je suis attentivement cette formation en premium j utilise phpstorm, j'en suis à 20:18 quand tu lances le test j'ai cette erreur que je n arrive pas à résoudre pourtant j'ai le même code et également essayé avec le tiens.... ------------- There was 1 failure: 1) Tests\Framework\AppTest::testRedirectTrailingSlash Failed asserting that an array contains '/demoslash'. C:\xampp\htdocs\myFramework\tests\Framework\AppTest.php:24 FAILURES! Tests: 1, Assertions: 1, Failures: 1. ------------------- public function testRedirectTrailingSlash() { $app = new App(); $request = new ServerRequest('GET', '/demoslash/'); $response = $app->run($request); $this->assertContains('/demoslash', $response->getHeader('Location')); $this->assertEquals(301, $response->getStatusCode()); } merci d'avance!
@aymenanes43323 жыл бұрын
salut! j'ai une erreur Uncaught Error: Class 'monApp\App' not found in C:\wamp64\www\monApp\public\index.php:3 et j'ai toujour cet erreur malgré que le code est juste
@Al.Andalouz5 жыл бұрын
salut grafikart, tu peux stp me dire c quoi la différence lorsque en démarre le serveur interne de php avec php -S localhost:8000 pour affiché une page php et lorsqu'on passe par un serveur php dèjà installé par exemple sur xamp !
@sbitkane22687 жыл бұрын
Bonjour Grafikart j'ai une erreur au niveau de mon url lorsque je tape /demosslash/ il me sort un url comme localhost:9000/demoslash/:%20/demoslash une idée svp ? merci d'avnce
@SekaiofKangae6 жыл бұрын
salut si tu as trouvé une réponse depuis, je suis preneuse !
@TsMProds7 жыл бұрын
Bonjour Graf, lors des tests unitaires (sous windows) j'ai une erreur fatale : Class "PhpUnit..." not found, peux tu m'aider?
@grafikart7 жыл бұрын
Tu as bien importé le bon namespace ? Au pire tu peux venir poser ta question sur grafikart.fr/tchat
@desmondmiles4957 жыл бұрын
Salut j'aime bien le design de ton os? c'est antergos ? quelles personnalisations as tu fait ?
@GGTcommunity7 жыл бұрын
Bonjour, je ne sais pas pourquoi mais quand je tape .vendor/etc... il me dit que .vendor n'est pas une commande. une idée ?
@grafikart7 жыл бұрын
si tu tape juste vendor/... (sans le ./ au début ?)
@GGTcommunity7 жыл бұрын
Grafikart.fr pareil ça ne marche pas " 'vendor' n'est pas reconnu en tant que commande interne"
@GGTcommunity7 жыл бұрын
Bonjour, je ne comprend toujours pas j'ai beau chercher partout je ne sais pas pourquoi ça me dit sa alors que j'ai suivie a la lettre votre tutoriel et que j'ai fait comme vous justement pour pas avoir d'erreur mais la commande ne marche toujours pas
@TheKingOfSnak7 жыл бұрын
Tu es bien dans la racine du projet ?
@GGTcommunity7 жыл бұрын
Oui «c:/wamp64/www/MonFramework »... Edit: c'est bon il y a eu une mise a jour de VIsual Studio Code et maintenant ça marche... par contre juste comment peut-on par exemple faire que quand on utilise une classe ça met le "use" directement ?
@appelnonsurtaxe7 жыл бұрын
Pourquoi les classes du PSR-7 n'ont pas simplement été implémentées dans le PHP (de base) ? Il s'agit de polyfills, et les classes seront ajoutées plus tard ?
@grafikart7 жыл бұрын
Parceque le PSR a pour but d'uniformiser les frameworks en proposant une interface commune, pas forcément de repenser PHP. PHP continue (et continuera) de représenter la requête à travers des variables globales.
@appelnonsurtaxe7 жыл бұрын
D'accord, merci beaucoup
@emilieg20366 жыл бұрын
Bonjour tout d'abord merci pour ces super tutos. J'ai juste un petit souci pour composer que j'ai bien installé via le terminal. En revanche pour la suite je ne sais pas comment récupérer composer.json par l'IDE. L'IDE que j'utilise est Bracket. Quand je fais composer init rien ne se passe pourtant j'indique bien la bonne arborescence de mon fichier monFramework...
@MEYER2511896 жыл бұрын
bonjour, tout le monde est-ce que pour suivre cette formation il est nécessaire de suivre la première formation en poo de grafikart entièrement ?
@grafikart6 жыл бұрын
Oui c'est indispensable, sauf si tu es déjà à l'aise avec les classes / objets en PHP
@MEYER2511896 жыл бұрын
@@grafikart merci
@kahilachraf64797 жыл бұрын
Bonjour j'ai une error Parse error: syntax error, unexpected ':', expecting ',' or ')' dans cette ligne : header('location: '.substr($uri, start:0, length:-1)); :/ svp des idées !!!
@XelaaaTV7 жыл бұрын
header('location: ' . substr($uri,0 , -1));
@sanabraham56904 жыл бұрын
Bonjour Grafikart et merci pour toutes les vidéos ,quand je lance composer init j'aurais l'erreur "symfony component console exception runtimeexception aborted" , la version que je l'utilise pour PHP est php 7.4.0 Merci de m'aider
@sanabraham56904 жыл бұрын
le problème est résolu Merci
@Soulouf7 жыл бұрын
Et mince le problème c'est que j'utilise Laragon pour avoir des URL tres classe genre mon-framework.dev au lieu du localhost Du coup je n'arrive pas a faire les tests pour enlever les "/" je tombe direct sur une erreur comme quoi la page ne fonctionne plus.
@grafikart7 жыл бұрын
Là il va être difficile de t'aider en commentaire car je n'utilise pas laragon, mais normalement ça devrait marcher, si tu as le temps passe sur le tchat en journée grafikart.fr/tchat
@Soulouf7 жыл бұрын
Je te remercie beaucoup, je passerai alors =)
@Soulouf7 жыл бұрын
J'ai résolu mon problème avec Valet pour Linux. J'ai vu que tu as fait un tuto sur Homestead, tu ne serais pas chaud pour en faire sur Laravel Valet ? (sachant il y a des versions dérivées pour Windows et Linux) c'est tellement rapide et facile =)
@mathieublairon86624 жыл бұрын
Bonjour, Voilà mon problème : 1) Tests\Framework\AppTest::testBlog TypeError: Argument 2 passed to PHPUnit\Framework\Assert::assertContains() must be iterable, string given, called in C:\wamp64\www\MonFramework\tests\Framework\AppTest.php on line 22 qui me renvoi a la ligne : $this->assertContains('Bienvenue sur le Blog', (string)$response->getBody()); Je ne comprend d’où peut venir le problème...
@lepiredescas834 жыл бұрын
Même souci ici :/
@parisgraphe4 жыл бұрын
pareil :(
@parisgraphe4 жыл бұрын
Bon, ceci dit, la page fonctionne quand même 🤷♂️
@masamune61654 жыл бұрын
Hello, je pense avoir trouvé (5 mois après ton message^^) : ``` $this->assertContains('Bienvenue sur le blog', [(string) $response->getBody()]); ``` Comme tu le vois, j'ai simplement placé le 2e paramètre dans un tableau et tout marche =)
@tambass43473 жыл бұрын
@@masamune6165 En cherchant un peu, j'ai trouvé que assertContains() été déprécié depuis PHPUnit 8.0, attention aux versions !!! Maintenant, il faut écrire $this->assertStringContainsString(), et surtout ne pas oublier de retirer le (string) dans les paramètres...
@antoinedevldn7 жыл бұрын
Du lourd! Much love de Montreal
@saidhr91424 жыл бұрын
impeccable , Merciii
@neldev98137 жыл бұрын
Salut Grafikart. Pourquoi tu n'utilises plus kahlan pour les tests unitaires ?
@grafikart7 жыл бұрын
pour le coup on va rester sur phpunit car il est plus répandu.
@mucyotreasure91787 жыл бұрын
merci bcp grafikart
@pierrenapoletano38895 жыл бұрын
Quelle thème pour intellij utilises tu au moment de la vidéo, sinon super video
@grafikart5 жыл бұрын
Tinacious github.com/Grafikart/intellij-tinacious
@azertyupz7 жыл бұрын
Salut, utilises-tu la version gratuite ou payante de intellij ?
@grafikart7 жыл бұрын
Payante, j'utilise un abonnement Jetbrain toolbox
@tarekbelhaj75337 жыл бұрын
merci pour le tuto, quel est le nom de l'ide que vous utilisez? merci
@GGTcommunity7 жыл бұрын
intellij
@mohamedsimari53987 жыл бұрын
ca me donne Invalid author string. Must be in the format ?? une idéé
@grafikart7 жыл бұрын
Ne met pas de caractères spéciaux
@mohamedsimari53987 жыл бұрын
OK ca passé mrc ca me donne un fichier json comme ca { "name": "framework/mon-framwork", "require": {} }
@MTEndia7 жыл бұрын
Your configuration does not allow connections to packagist.org/packages.json. See getcomposer.org/do c/06-config.md#secure-http for details. une idée ?
@MTEndia7 жыл бұрын
Je précise que j'ai désactiver ssl parceque composer me le demander, je suis sous windows 10
@KuriosArt7 жыл бұрын
Super, ca commence bien :)
@lvndry85467 жыл бұрын
Quel IDE est utilisé dans la video svp ?
@grafikart7 жыл бұрын
IntelliJIDEA
@antoinefouque50346 жыл бұрын
Bonjour je suis totalement débutant, je n"arrive pas a installer composer et l'utiliser quelqu'un pourrai m'aiguiller pour avoir toutes les clés en main et suivre ce tutoriel ? Merci
@grafikart6 жыл бұрын
www.grafikart.fr/tutoriels/php/composer-480
@antoinefouque50346 жыл бұрын
Merci beaucoup, j'essaye de suivre ta formation sur la programmation orienté objet je maitrise les bases de php mais je ne comprend rien sur tout les dossier que tu as sur intellji par ou tu me conseilles de commencer pour pouvoir suivre toutes cette formations ? Merci
@dranostyippo72777 жыл бұрын
$uri[-1] me donne "Notice: Uninitialized string offset: -1" comment ça se fait ?
@grafikart7 жыл бұрын
Met à jour PHP vers la version 7.1
@RICKOVER1007 жыл бұрын
Salut j'aimerai bien avoir un tuto PHP objet en mode débutant pas à pas svp avec un débit sur speech low lol
@mechanicalseu7 жыл бұрын
Il en a déjà fait un je crois cherche POO dans ses vidéos
@ludwigjedde596 жыл бұрын
mets la vitesse de la vidéo à 0.75, tu vas voir, si t'es débutant le débit de Grafikart va moins vite et tu as le temps de comprendre. ;-)
@oOLuNaTiC93Oo5 жыл бұрын
Bon tuto comme d'habitude mais fait attention à ton vocabulaire quand tu expliques quelque chose. Par exemple tu crée une classe et tu dis qu'elle "extends" de TestCase, tu devrais plutôt dire qu'elle hérite directement ça serait plus simple à comprendre. Pareil quand tu dis que tu n'as pas encore créé l'objet de type "Request", tu veux plutôt dire que tu n'as pas encore créé la classe. C'est pas grand chose mais lorsqu'on essai de comprendre le fonctionnement d'un système si le vocabulaire est confus ce n'est pas facile de se repérer encore plus quand on a pas connaissance des mots-clés ou opérateurs d'un langage.
7 жыл бұрын
Tu devrais utiliser php-cs-fixer pour fixer ton code plutôt que de le faire à la main, tu gagneras beaucoup, beaucoup de temps :)
7 жыл бұрын
Oui c'est pareil, et en fait il l'utilise dans les tutoriels suivant. Je ne sais pas pourquoi pas dans celui-ci du coup, mais soit ^^
@rayanasynat19547 жыл бұрын
Nom de thème de phpstorm pls
@rayanasynat19547 жыл бұрын
Thanks brother
@joelafouine7354 жыл бұрын
Trop drole le "Ah mince ! j'ai supprimé ce fichier là"....
@mezaitakfarines72625 жыл бұрын
tu explique bien mais tu parle trop vite
@osmoz17624 жыл бұрын
C'est clair qu'il parle trop vite...
@Jordan.BASSET6 жыл бұрын
*Pense a remonter le contenu de ton IDE ! On ne vois rien quand la vidéo est en pause a cause de la barre en bas de la vidéo !*
@grafikart6 жыл бұрын
A l'époque de l'enregistrement de ces vidéos la navigation du player n'était pas comme ça. Malheureusement il est trop tard maintenant pour changer les choses :( Désolé pour le désagrément.
7 жыл бұрын
Oh mon dieu ne pas versionner le composer.lock c'est mal. Le jour où un truc plante en prod parce qu'un vendor n'est pas à la bonne version ça va faire mal. Si la version de php est ton unique problème tu peux la fixer dans le composer.json et composer respectera lorsqu'il calcule les dépendances. Doc ici : getcomposer.org/doc/06-config.md#platform
@grafikart7 жыл бұрын
Le problème (dans mon cas) c'est que la version de PHP de mon environnement de dev (arch linux) est souvent trop en avance et va me générer un composer.lock incorrect. Utiliser la platform est une bonne idée mais je pourrais me retrouver avec le pb inverse (certe rare) d'une librairie non compatible avec la versio de PHP de mon environnement. Je préfère, pour le coup, générer un composer.lock lors des tests unitaires (sur l'environnement avec la même version que ma prod) mais effectivement je détaillerais un peu plus ce choix là dans une autre vdéo.
@TheKingOfSnak7 жыл бұрын
Symfony ne commit pas composer.lock, c'est mal donc pour tant d'utilisateur ? ^^ Ta prod et ton local est différent, c'est étrange de le commit
7 жыл бұрын
Normal qu'il ne le commit pas, sinon tous les utilisateurs auraient par défaut les versions des vendors datant de la release de symfo que tu utilises, sans les bugfix ou autre. Quand tu travailles de façon pro, tu *veux* avoir strictement les même versions des vendors en dev et en prod. Pourquoi ? Parce que si tu as un problème avec une version spécifique d'un vendor (une mise à jour qui pète quelque chose par exemple, ou à l'inverse une feature que tu as en dev qui ne sera pas en prod), tu vas avoir bien du mal à trouver la source du problème, puisque tu n'auras pas le même code selon l'environnement (et que le débug en production c'est pas possible...). C'est aussi valable pour les versions de php, tu configure ton environnement (virtuel ou pas) pour avoir la même version de php en dev, en test et en prod.
7 жыл бұрын
Si vous voulez plus d'infos, voici la doc de composer qui dit qu'il *faut* le commiter : getcomposer.org/doc/01-basic-usage.md#commit-your-composer-lock-file-to-version-control Un article de blog que j'ai trouvé rapidement qui explique pourquoi probablement mieux que moi : www.engineyard.com/blog/composer-its-all-about-the-lock-file
@mezaitakfarines72625 жыл бұрын
jcp pourquoi j'ai des erreurs alors que je fait la meme choses que toi bizar