Metagames


Précédent   Metagames > Discussions Générales > Informatique > Développement
Accueil S'inscrire Blogs FAQ Communauté Calendrier Téléchargements Messages du jour Recherche

Développement Programmation et POO (C, C++, Java, Python ...) et Développement Orienté Web (HTML, CSS, PHP, SQL, W3C ...)

Réponse
 
Outils de la discussion Modes d'affichage
Vieux 10/04/2009, 14h14   #1 (permalink)
Profil
Bernard Tapette
Ancienneté  99%
Ancienneté 99%
 
Avatar de bad wolf
 
Date d'inscription: mai 2006
Pays :
Messages: 6 837
Téléchargements: 0
Uploads: 0
Entrées dans le blog: 7
Merci: 1
Remercié 272 fois dans 147 Posts
Par défaut syntaxe php "?"



je suis en train de décortiquer un code php et je suis tombé sur une syntaxe avec un "?" que je ne connais pas :

Code:
$limit = isset($_GET['limit']) ? (int) $_GET['limit'] : 0;
quelqu'un peut m'expliquer???
__________________
StarCraft II ça trou le cul!!!
bad wolf est déconnecté   Réponse avec citation
Vieux 11/04/2009, 13h07   #2 (permalink)
Profil
Technic'Admin
Ancienneté  79%
Ancienneté 79%
 
Avatar de jack
 
Date d'inscription: mai 2006
Localisation: LV-426
Âge: 36
Pays :
Messages: 17 178
Téléchargements: 4
Uploads: 0
Merci: 7
Remercié 407 fois dans 358 Posts
Par défaut

PHPFrance :: Voir le sujet - Opérateurs PHP : la "grammaire" de PHP

A ce que j'ai compris c'est une simplification de if et else.
__________________
Hello IT ... Have you tried to turn it off and on again ? ... The button on the side, is it glowing ? ... Yeah you need to turn it on ! ... The button turns it on ? ... You DO know how a button works don't you ! ?
jack est déconnecté   Réponse avec citation
Vieux 11/04/2009, 21h59   #3 (permalink)
Profil
Dieu tout puissant
Ancienneté  92%
Ancienneté 92%
 
Avatar de FreeZou
 
Date d'inscription: mai 2006
Âge: 37
Pays :
Messages: 2 853
Téléchargements: 0
Uploads: 0
Merci: 5
Remercié 116 fois dans 60 Posts
Par défaut

Une mauvaise simplification en fait, syntaxiqument illisible et très mauvais niveau perf.

Mais oui c'est un if else.

(if true) ? (do_that) : (else_do_that)
FreeZou est déconnecté   Réponse avec citation
Vieux 13/04/2009, 17h19   #4 (permalink)
Profil
Hacker De Chips
Ancienneté  92%
Ancienneté 92%
 
Avatar de hackchip
 
Date d'inscription: mai 2006
Localisation: Rouen
Âge: 42
Genre : Homme
Pays :
Messages: 1 607
Téléchargements: 66
Uploads: 0
Merci: 2
Remercié 340 fois dans 42 Posts
Par défaut

Il peut être encore très utile pour faire un teste d'une variable et la remplir si non elle non créer directement dans un argument.

Par exemple avec un if :

Code:
Ma_Fonction (Argument01, Argument02, (if (isset($TOTO)) $TOTO = false);
Cela mettra une erreur, maintenant avec la simplification :

Code:
Ma_Fonction (Argument01, Argument02, (isset($TOTO) ? $TOTO : false));
Apres il est clair qu'on peut y remédier en préparent cette vérification avant de la balancer dans l'argument de la fonction, mais bon c'était juste pour dire qu'elle était toujours au temps utile pour ce genre de manip afin d’éviter par exemple des erreurs de variable non défini, ou de même pour des constants non défini ...

@+
__________________
hackchip est déconnecté   Réponse avec citation
Vieux 14/04/2009, 10h00   #5 (permalink)
Profil
Bernard Tapette
Ancienneté  99%
Ancienneté 99%
 
Avatar de bad wolf
 
Date d'inscription: mai 2006
Pays :
Messages: 6 837
Téléchargements: 0
Uploads: 0
Entrées dans le blog: 7
Merci: 1
Remercié 272 fois dans 147 Posts
Par défaut

ok
merci pour les réponses

c'est vrai que la syntaxe est pas super lisible par rapport à un if :/ ...
par contre, à quoi correspond le (int) ??
__________________
StarCraft II ça trou le cul!!!
bad wolf est déconnecté   Réponse avec citation
Vieux 14/04/2009, 10h56   #6 (permalink)
Profil
Technic'Admin
Ancienneté  79%
Ancienneté 79%
 
Avatar de jack
 
Date d'inscription: mai 2006
Localisation: LV-426
Âge: 36
Pays :
Messages: 17 178
Téléchargements: 4
Uploads: 0
Merci: 7
Remercié 407 fois dans 358 Posts
Par défaut

Je crois bien que c'est une histoire de conversions en entier.
__________________
Hello IT ... Have you tried to turn it off and on again ? ... The button on the side, is it glowing ? ... Yeah you need to turn it on ! ... The button turns it on ? ... You DO know how a button works don't you ! ?
jack est déconnecté   Réponse avec citation
Vieux 14/04/2009, 11h03   #7 (permalink)
Profil
Dieu tout puissant
Ancienneté  92%
Ancienneté 92%
 
Avatar de FreeZou
 
Date d'inscription: mai 2006
Âge: 37
Pays :
Messages: 2 853
Téléchargements: 0
Uploads: 0
Merci: 5
Remercié 116 fois dans 60 Posts
Par défaut

Typage entier, comme ça t'es sur que c'est un entier (vu que ça le converti à la volée) et rien d'autre =)
FreeZou est déconnecté   Réponse avec citation
Vieux 16/04/2009, 14h35   #8 (permalink)
Profil
Hacker De Chips
Ancienneté  92%
Ancienneté 92%
 
Avatar de hackchip
 
Date d'inscription: mai 2006
Localisation: Rouen
Âge: 42
Genre : Homme
Pays :
Messages: 1 607
Téléchargements: 66
Uploads: 0
Merci: 2
Remercié 340 fois dans 42 Posts
Par défaut

Sert-toi aussi du site PHP, cela te permettra d'avoir une explication comme a fait jack & FreeZou, il y a aussi des exemples d'utilisation avec des commentaires en français sur les premières lignes:

http://www.php.net/int

@+
__________________

Dernière modification par hackchip ; 16/04/2009 à 14h44.
hackchip est déconnecté   Réponse avec citation
Vieux 17/04/2009, 21h21   #9 (permalink)
Profil
Bernard Tapette
Ancienneté  99%
Ancienneté 99%
 
Avatar de bad wolf
 
Date d'inscription: mai 2006
Pays :
Messages: 6 837
Téléchargements: 0
Uploads: 0
Entrées dans le blog: 7
Merci: 1
Remercié 272 fois dans 147 Posts
Par défaut

ah oui, je connait le site officiel quand même

par contre pas évident de faire une recherche sur un "?" ^^

merci à tous en tout cas :p

++
__________________
StarCraft II ça trou le cul!!!
bad wolf est déconnecté   Réponse avec citation
Vieux 17/04/2009, 21h32   #10 (permalink)
Profil
Hacker De Chips
Ancienneté  92%
Ancienneté 92%
 
Avatar de hackchip
 
Date d'inscription: mai 2006
Localisation: Rouen
Âge: 42
Genre : Homme
Pays :
Messages: 1 607
Téléchargements: 66
Uploads: 0
Merci: 2
Remercié 340 fois dans 42 Posts
Par défaut

Regarde bien ce que j'ai dit, je parlais pour le INT, et non du if simplifié.

@+
__________________
hackchip est déconnecté   Réponse avec citation
Réponse
Précédent   Metagames > Discussions Générales > Informatique > Développement


Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non


Discussions similaires
Discussion Auteur Forum Réponses Dernier message
4 Emulateurs Nintendo DS "DeSmuME v0.7.0" "iDeaS 1.0.1.5" "no$Gba 2.4a" "NeonDS 0.03" LoneWolf meta Linux - macOS - Windows 51 02/05/2011 12h25
[ACH]"Ventilateur ou WHISPER 360" & "Circuit et bouton Power/Wifi XBOX360" M3roux Petites Annonces 14 23/07/2010 10h58
jeux multi5 qu'en anglais avec "esr" dans "freemcboot" Ben.gee Playstation 2 0 01/03/2009 21h55
convertir sauvegarde gba exploader "sav" vers M3 perfect "dat" possible ? shinset Linkers 3DS - DS(i) - GBA 1 16/09/2008 11h06
"device Id" Et "i/o Port", Sur carte mère ASUS P5LD2 DreadFull Xbox 360 4 26/01/2007 16h34


Fuseau horaire GMT +1. Il est actuellement 08h50.


© 2003-2018 MetaGames. Tous droits réservés.