webForumDet fria alternativet
Logga in / Bli medlem

skillnad på = och ==?

PHP

4 svar · 282 visningar · startad av kittlos

Medlem sedan sep. 2002205 inlägg
Trådstart#1

Detta är väl en allmän programmeringsfråga och jag känner mig rätt dum som inte vet, men:

Vad är skillnaden på:

if($goto="add_article.php")

och

if($goto=="add_article.php")

$goto kan nämligen ibland se ut så här:

$goto='add_article.php?articletype=article'

där variabeln articletype kan skifta. Därför vill jag i min if-sats fånga upp när goto innehåller add_article.php oavsett om det följer något mer efteråt.

Jag gör kanske helt fel, hur bör jag göra?

Enkelt likhetstecken verkar dock ge variabeln goto just det värdet. (dvs kapar bort det som eventuellt finns bakom)

Medlem sedan mars 20007 896 inlägg
#2

Ett är-lika-med-tecken ( = ) är en tilldelningsoperator. Du ger alltså värdet till höger om tecknet till variabeln till vänster om tecknet. Två tecken är jämförelseoperator, för att se om variabeln/värdet till vänster om operatorn har samma värde som variabeln/värdet till höger.

$myVar = "Hej!";
// Ger variabeln $myVar värdet Hej!
$myVar == "Hej!";
// Kollar om $myVar har samma värde som Hej!
Medlem sedan sep. 2002205 inlägg
#3

Även inom en if-sats?

Ok, några tips på hur man ska lösa mitt problem? Måste jag hacka ut de första tecknen i $goto för att kolla den då, eller?

Medlem sedan mars 20007 896 inlägg
#4

Japp, även inom en if-sats. :)

Du kan lösa det så här:

if( substr( $goto, 0, 11 ) == "add_article" ) {
...
}

http://se.php.net/substr

Medlem sedan sep. 2002205 inlägg
#5

jag gjorde precis så. Tackar!

258 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)