2013-07-15 64 views
-3

看來我的if語句,我已經在下面發佈不正常。我真的沒有看到任何問題,所以我很難過。如果$filetype = PNG if語句停在第一條語句並運行,即使它只有$filtype = JPG古怪如果陳述

這裏是我的代碼運行:

if ($filetype = "JPG") 
{ 
$img_r = imagecreatefromjpeg($src); 
} 
elseif ($filetype = "GIF") 
{ 
$img_r = imagecreatefromgif($src); 
} 
elseif ($filetype = "PNG") 
{ 
$img_r = imagecreatefrompng($src); 
} 

什麼我沒有看到?

如果我更改代碼,以便它讀取...

if ($filetype = "PNG") 
{ 
$img_r = imagecreatefrompng($src); 
} 
elseif ($filetype = "GIF") 
{ 
$img_r = imagecreatefromgif($src); 
} 
elseif ($filetype = "PNG") 
{ 
$img_r = imagecreatefrompng($src); 
} 

...和$filetype = "PNG"一切工作就好了。

+6

你用賦值運算符'='混淆了相等運算符'=='。 – andrewsi

+0

@andrewsi簡單的答案也是答案。爲什麼把它放在評論中? :) – GolezTrol

+0

就是這樣,謝謝!這總是很簡單的事情。 :-P –

回答

4
if ($filetype = "JPG") 

這是一項任務,而不是比較。

if ($filetype == "JPG") 

會做你想做的事情。

+0

非常感謝你,我總是看着簡單的東西。 :-) –

+0

@JeffPeak ** MAN!**'Assignment ='vs.'comparison ==',兩個非常不同的魚碗。這不是一個簡單的錯誤...如果你刪除了一些文件,如果「如果」:) – CodeAngry

+0

幸運的是,我並沒有刪除或改變任何重要的東西。我只是忘了額外的'='符號,因爲有時候我的大腦會關閉。需要更多咖啡!我以前從未犯過這個錯誤,現在我覺得在這裏發佈它很愚蠢。 –