Newsgroup: it.comp.www.php
Titolo: Confronto

L'istruzione:
if (mkdir($_POST[valore])  ==  false) .... risulta corretta mentre con solo 
un uguale  if (mkdir($_POST[valore])  =  false) mi da errore , perch�?
dalla guida risulta che mkdir restituisce false e quindi perch� false=false 
� errato ?

 ï¿œ errato ?
perche' = e' un operatore di assegnamento, mentre == e' un operatore di 
confronto
a = false;
significa assegnare ad a il valore falso
a == false;
significa verificare se a vale falso
chiaro?
ciao
Mauro

XP ha scritto:

l'operatore "==" indica un confronto
mentre il solo "=" indica un assegnazione
nel tuo caso poi � anche inutile, risolvi meglio cos� (solo perch� in 
questo caso restituisce vero-falso)
if (!mkdir($_POST[valore])) { //do }

 ha scritto nel messaggio 
news:hfte0u$59t$1...@tdi.cu.mi.it...

Grazie ddella rapidissima risposta a te ed a"Innuendo".
Sono un po' agli inizi del php e quindi qualche cavolata la chiedo anch'io.
Comunque devo dire che il PHP mi piace ed � molto "potente" sotto diversi 
aspetti.
Unico svantaggio � che per fare le prove devo sempre caricare il file php 
nel web-server. 

 php nel web-server.
infatti prima dovresti crearti in locale un ambiente di sviluppo identico 
a quello di produzione e fare le prove li sopra, una volta testato il 
software ne fai il deploy sul server.
In pratica ti devi installare php+web-server (di solito apache)+dbms (di 
solito mysql)


ho guardato sul sito 
http://windows.php.net/download/
 ma quale tra quelli 
presenti mi consigli di installare ?
Ho winXP, faccio programmi semplici e non uso mysql 



visto l'uso che ne fai, ti consiglio di installare uno del pacchetti all-
in-one come questo:
http://www.apachefriends.org/it/xampp-windows.html
così hai già tutto l'ambiente pronto

 
http://www.apachefriends.org/it/xampp-windows.html
o anche questo:
http://download.html.it/software/vedi/1434/easyphp/

 battuto!!!).
mica l'ho capita...
quella è una funzione propria del php a che mi risulta quando non 
specifichi un confronto dentro un costrutto if in php si intende che se 
quella confizione è true esegue l'if
tu dici che
!mkdir($_POST[valore])
e
mkdir($_POST[valore])!=true
sono diversi?

 sono diversi?
no non hai capito, si parlava di funzioni che possono restituire FALSE 
oppure un intero, ti faccio un esempio:
la funzione strpos restituisce l'indice della stringa dove trova la 
sottostringa che gli passi, se non trova corrispondenze restituisce FALSE.
Adesso supponiamo di avere la stringa pippopluto
se faccio:
strpos  ( 'pippopluto'  , 'pippo' )
il risultato è 0
se faccio
strpos  ( 'pippopluto'  , 'paperino' )
il risultato è FALSE
se metto  le funzioni in un if con !
if(!strpos  ( 'pippopluto'  , 'pippo' ))
{do..}
if(!strpos  ( 'pippopluto'  , 'paperino' ))
{do..}
in entrambi i casi entro dentro l'if, ma per due motivi totalmente 
diversi.
te capi? :)

Argaar ha scritto:

Forse intendeva dire: se la funzione restituisce comunque un booleano, 
allora è corretto scrivere così.
Se la funzione non ritorna un solo tipo, ma tipi diversi, allora è 
meglio scrivere:
if (func($x) !== false){ // Ok ... }
else { // Fallito ... }

RedWiz ha scritto:

Io di solito faccio:
strpos  ( ' '.'pippopluto'  , 'pippo' )
e mi aspetto la posizione a partire da 1.
Ora ho capito perchè lo faccio. Grazie.

Quasimodo ha scritto:

allora si...io intendevo questo con la "frase tra parentesi"...

 allora si...io intendevo questo con la "frase tra parentesi"...
ma infatti io intendevo spiegargli questo quando dicevo attenzione alla 
frase tra parentesi :)

ma la scritta:  !mkdir($_POST[valore])   e   mkdir($_POST[valore])!   � la 
stessa cosa ?

 nel web-server.
Dovrersti installare un server locale
Leo