PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > fr.comp.lang.php > Probleme avec &
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
Probleme avec &

Réponse
 
LinkBack Outils de la discussion
Vieux 26/07/2007, 15h47   #1 (permalink)
Thief13
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Probleme avec &

Bonjour à tous !

Voilà, j'ai un problème étrange : je chercher à faire quelque chose comme ça

$i = true;
$j = false;

$i &= $j;

le probleme, c'est que le résultat, qui devrait etre un booleen, devien
un integer, alor que quand je fait ça :

$i = $i && $j;

le resultat reste bien en booleen...

Quelqu'un à une idée d'ou peut provenir le problème ?

Merci d'avance !
  Réponse avec citation
Vieux 26/07/2007, 17h36   #2 (permalink)
P'tit Marcel
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Probleme avec &

Thief13 a écrit :
> Voilà, j'ai un problème étrange : je chercher à faire quelque chose comme ça
> $i = true;
> $j = false;
> $i &= $j;



L'assignation combinée n'est pas disponible pour tous les opérateurs, et
notamment n'existe pas pour les opérateurs logiques && et ||.
D'ailleurs, si elle existait, il faudrait coder &&= et non &=.

Le code &= correspond à l'opérateur & (ET binaire qui renvoit un nombre
binaire et non un booléen).

a+
--
P'tit Marcel
stats sur les forums modérés http://www.centrale-lyon.org/ng/
  Réponse avec citation
Vieux 26/07/2007, 17h36   #3 (permalink)
Denis Beauregard
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Probleme avec &

Le 26 Jul 2007 14:47:47 GMT, Thief13 <Thief13@nospam.com> écrivait
dans fr.comp.lang.php:

>Bonjour à tous !
>
>Voilà, j'ai un problème étrange : je chercher à faire quelque chose comme ça
>
>$i = true;
>$j = false;
>
>$i &= $j;


Plutôt &&=

>le probleme, c'est que le résultat, qui devrait etre un booleen, devien
>un integer, alor que quand je fait ça :
>
>$i = $i && $j;
>
>le resultat reste bien en booleen...
>
>Quelqu'un à une idée d'ou peut provenir le problème ?


mauvaise syntaxe


Denis
  Réponse avec citation
Vieux 26/07/2007, 17h43   #4 (permalink)
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Probleme avec &

Le 26/07/2007 16:47, Thief13 a écrit :
>
> Voilà, j'ai un problème étrange : je chercher à faire quelque chose comme ça
>
> $i = true;
> $j = false;
>
> $i &= $j;


Ok.

> le probleme, c'est que le résultat, qui devrait etre un booleen, devien
> un integer,


Ben non, c'est normal. Contrairement à l'opérateur && (et &&= s'il
existe) qui donne un booléen, l'opérateur & (et &=) donne un entier.

> alor que quand je fait ça :
>
> $i = $i && $j;
>
> le resultat reste bien en booleen...


Oui, bien sûr.

Si jamais ça existe :
$i &&= $j;

> Quelqu'un à une idée d'ou peut provenir le problème ?

  Réponse avec citation
Vieux 26/07/2007, 17h58   #5 (permalink)
Olivier Miakinen
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Probleme avec &

Le 26/07/2007 18:43, Olivier Miakinen a écrit :
>>
>> $i = $i && $j;

>
> Si jamais ça existe :
> $i &&= $j;


Comme l'a signalé P'tit Marcel, cet opérateur n'existe pas.

Il y a d'autres façons de faire, par exemple :
- $i = $i ? $j : false;
- if ($i) $i = $j;
- $i &= $j; settype($i, "boolean");
- $i &= $j; $i = (bool) $i;

Mais la meilleure est sans conteste :
- $i = $i && $j;
  Réponse avec citation
Vieux 03/08/2007, 21h14   #6 (permalink)
Jean Pierre Daviau
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut & j'y comprends rien

Bonjour à tous,

----------- Olivier Miakinen a écrit
http://groups.google.com/group/fr.co...ea6f6046025eff
-------------------

Il y a d'autres façons de faire, par exemple :
- $i = $i ? $j : false;
- if ($i) $i = $j;
- $i &= $j; settype($i, "boolean");
- $i &= $j; $i = (bool) $i;

Mais la meilleure est sans conteste :
- $i = $i && $j;
---------------
$i =1;
$j =2
- $i &= $j; settype($i, "boolean");

0001
0010
-----
0000

C'est ti ça?

Amicalement

Jean Pierre Daviau
--
windows Xp
asus p4 s533/333/133
Intel(R) Celeron (R) CPU 2.00 GHz
Processor Radeon7000 0x5159 agp
  Réponse avec citation
Réponse


Outils de la discussion

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 oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 03h40.


Édité par : vBulletin® version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,10001 seconds with 14 queries