question sur la gestion de type

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : question sur la gestion de type

Re: question sur la gestion de type

par Maskime » 13 mai 2011, 13:09

Hello,

Plutôt de grand discours voici un peu de code pour t'éclairer :
<?php
$iValue = 12;//On a un int
$sValue = "12";//On a un string

if($sValue == $iValue)//Retourne true parce qu'il voit que le string contient un int et du coup il comprend que tu fais un test sur la valeur
if($sValue === $iValue)//Retourne false parce que l'opérateur '===' va tester le contenu et le type de la variable. Là tu as bien le même contenu, mais le type de la variable n'est pas le même

strlen($sValue)//Là rien d'étonnant la longueur vaut 2
strlen($iValue)//Là il convertit ton int en string pour faire son calcul de longueur : 2

$iValue + $sValue//Conversion de ta chaîne en int, le résultat sera 24
?>

Re: question sur la gestion de type

par light86 » 13 mai 2011, 12:37

bonjour merci pour votre réponse si j'ai une chaine de caractère qui est égale à 1 peut t'il la convertir en 1 entier
merci

Re: question sur la gestion de type

par xTG » 13 mai 2011, 08:02

Il les gère dynamiquement. Donc il fait du cast suivant les traitements que tu lui fais faire.
Et au passage... strlen("1") (ou bien strlen(1) ) fait bien une longueur de 1. ;)

question sur la gestion de type

par light86 » 13 mai 2011, 03:16

bonsoir je travaille avec les entier mais quand mit strlen(1) il m'a retourné
1 je pensais que il allait convertir 1 en une chaine de caractère

je voudrais savoir comment php gère les types de variables
merci