Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

Découvrir Symfony3

Utiliser des paramètres dans une commande

Testez gratuitement nos 1340 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Une commande seule, c'est simple. Mais si vous voulez interagir avec et donner des possibilités différentes avec un même code source, il vous faut user de paramètres d'entrée. Définissez des paramètres et apprenez à les récupérer dans la commande.
06:14

Transcription

Maintenant vous savez créer une petite commande, vous savez un petit peu la configurer. Il est temps de voir comment on va pouvoir lui passer des arguments et des options à cette commande. Vous allez voir que ça va vous donner la possibilité d'aller beaucoup plus loin avec les commandes et de créer bien des choses très intéressantes avec les commandes parce que vous allez pouvoir du coup récupérer les informations que l'utilisateur vous mettra dans la commande. Alors, d'abord on va la renommer cette commande parce que pour le moment c'était une petite commande sympa. On va dire que cette commande elle dit bonjour et on va l'appeler « Hello ». Et on va lui donner des arguments, alors, ça c'est pareil on le mettra en anglais après, OK. On commence d'abord par les arguments. Qu'est-ce que c'est un argument ? C'est un argument de commande qu'on va mettre derrière l'appel à la commande et qui va nous permette de récupérer de l'info. « addArgument() », ça permet d'ajouter des arguments de commande. Le premier paramètre c'est et bien le nom de l'argument, nous ça va être « name ». Et puis ensuite, ça va être et bien le mode, le mode d'un argument, c'est comment il va réagir. On va utiliser la classe « inputArgument ». Et on va pouvoir dire que cet argument est « OPTIONAL », que c'est un « IS_Array », ou alors qu'il est obligatoire « REQUIRED ». On va le mettre en OPTIONAL, ce n'est pas obligatoire de mettre son nom si on ne met pas de nom ça dira anonymous. Et ensuite, derrière l'aide de la commande. L'aide de la commande qu'est-ce que ça va être ? Tout simplement ça va être la description qu'on aura dans l'aide. Donc pour nous ici « Give your name », donner votre nom, OK. On peut aussi mettre un « default » si on veut derrière, nous ça pourra être « Anonymous ». Concrètement s'il n'y a rien, ça récupérera « Anonymous », ça permettra d'éviter d'avoir affaire internaire. Maintenant on va la récupérer. Je vous l'ai dis tout à l'heure « this=input » permet de récupérer. Et derrière vous aurez des guetteurs, « getArgument(), getOption() », « getArgument() », donc pour nous, « name », ça on va le récupérer, on va aussi le placer directement dans une variable. Comme ça c'est plus propre et c'est plus petit. Et puis enfin, il va bien falloir le mettre quelque part, cet argument nous on va composer un texte qui va être renvoyé, et ce texte on va faire un petit « sprintf() ». On va mettre ici « Hello » et puis le prénom, le « name » et on va passer le « name » derrière. Et comme ça quand on va appeler la commande et bien op, on mettra ça en sortie, le texte. Don là on est bon, on peut essayer notre commande donc rappelez-vous ah, on va aller chercher « bin/console ». Et puis ici c'était l'espace « my » et c'est « Hello ». Si je le fais comme ça je vais avoir un « Hello Anonymous ». Parce que ça réagit en fait, avec directement, le paramètre par défaut sachant que nous n'avons rien mis. Maintenant on va demander l'aide. Vous allez voir que l'aide a un petit peu évolué ah, puisque ici maintenant on peut donner un « name », c'est l'argument qui a été ajouté ici « Give your name » et on a un « default » qui est défini, c'est génial. On peut vraiment faire ça très proprement, il n'y a aucun problème et vous verrez qu'il y a des options aussi qui sont déjà définies. Pas d'arguments définis de base, mais des options définies. Ce qui veut dire que maintenant si je lui dis « Hello Julien », comme ça. J'obtiens « Hello Julien », donc voyez pour passer un paramètre il suffira simplement de le mettre sur la ligne de la commande et ça viendra s'ajouter automatiquement. On voit les options maintenant, alors, pour les options « addOption() » voyez qu'on a un tout petit peu plus le « name », le « shortcut » donc en fait, le raccourci, le « mode » bien sûr il y en a aussi un, la « description », et puis un « default » si on a besoin. Nous on va utiliser ici un paramètre donc une option « uppercase ». On va lui donner ici, une seule lettre attention une seule lettre parce que ça ne marchera pas sinon, pour le raccourci « U ». On va lui donner un mode alors, le mode ne sera pas sur « inputArgument() », mais sur « inputOption() ». Donc on l'a pas loin ici, donc là vous avez le droit. « VALUE_NONE » je vous le conseille si vous n'allez pas utiliser cette option pour passer de l'info, mais si vous l'utilisez uniquement en tant qu'option. « OPTIONAL » c'est ce que c'est « IS_Array » ou « REQUIRED ». Nous on va mettre « VALUE_NONE », il n'y a pas de valeur à ça si je le mets ça va être « upercase », si je ne le mets pas ben ça va être du texte normal. Et derrière on va simplement mettre une aide « 'set text to uppercase' », voilà. Quand vous aurez fait ça si vous redemandez l'aide de votre commande, vous aurez maintenant une nouvelle option qui apparaît qui se mettra tout en haut, ça c'est génial et il va falloir maintenant le faire réagit. Comment on va faire pour que ça réagisse ? On va simplement ici se créer une petite variable « uppercase », et on va aller récupérer sur « input » non pas un argument, mais une option. « getOption() » et ici l'option qu'on veut récupérer c'est « uppercase ». Et notre texte qu'on a ici, on va maintenant créer une variable « $finalTexte » voilà, qui vérifiera si on a de l'« uppercase », donc là on va se faire effectivement un petit ternaire, s'il y a de l'uppercase on va faire un « strtoupper() » pour faire un « uppercase » du texte. Et sinon on va renvoyer le texte brute, il n'y a pas de problème. Et bien sûr vous n'oublierez pas de passer « finaltexte » à la fin. Bon, ben maintenant comment ça marche ? On va faire « Hello Julien » ça marche c'est normal. On va faire « Hello Julien » avec U, parce que c'est le raccourci regardez « -u » ça vous permet d'utiliser le « uppercase ». Et là on va avoir « Hello » « Julien » en « uppercase ». Mais on eut aussi utiliser « --uppercase » ça marche aussi. « --uppercase » fonctionnera. Bien sur on n'est pas obligé ici de mettre, comme on l'avait défini là le premier argument, ce n'est pas obligatoire il est optionnel. Doc du coup ici si je fais ça, je vais avoir « Hello Anonymous » en upercase. Voyez que ce n'est pas compliqué à utiliser il y a juste voilà, un petit gymnastique à mettre en place. On va récupérer les options et les arguments de cette manière. Et puis après on travaille avec comme on en a envie. Ça, ça vous permet d'avoir une certaine puissance et une certaine souplesse sur les commandes qui vont vous permettre aussi et bien d'avoir une commande générique à laquelle vous passez des options ou des arguments pour faire des choses un peu différentes.

Découvrir Symfony3

​Prenez en main Symfony3 pour développer des applications riches. Apprenez à créer des routes et des contrôleurs, créez des formulaires, sauvegardez des données, etc.

3h27 (45 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :7 avr. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !