我有一个名为$type
的变量type1
或type2
。我有另一个名为$price
的变量,我希望根据$type
变量的内容进行更改。出于某种原因,在发送的电子邮件中,没有任何内容。我已将$price
设置为if之外的一些随机文本然后我工作,所以我知道它不是邮件功能。有谁知道为什么这个if语句不起作用?
的 PHP 的
$type = "type 2";
if( $type == "type1" ) $price = "249 kr";
if( $type == "type2" ) $price = "349 kr";
$headers = 'From: xxxxxx@gmail.com';
$subject = 'the subject!';
$message = $price;
mail($email, $subject, $message, $headers);
由于
不过,在人们生气之前,我一直在寻找并遵循一些事情,但没有任何效果。修改 的 正确的方法是:
$type = "type 2";
if( $type == "type1" ) $price = "249 kr";
else $price = "349 kr";
$headers = 'From: xxxxxx@gmail.com';
$subject = 'the subject!';
$message = $price;
mail($email, $subject, $message, $headers);
谢谢Maja
答案 0 :(得分:1)
如果$type
只能是“type1”或“type2”,你应该这样写:
if( $type == "type1" ) $price = "249 kr";
else $price = "349 kr";
如果价格现在显示为“349 kr”,则$type
中的值可能不正确。
您还应该考虑
if( $type == "type1" ) $price = "249 kr"; else
if( $type == "type1" ) $price = "349 kr";
else $price = "error";
答案 1 :(得分:0)
鉴于您的帖子,我唯一可以想象的是$type
没有"type1"
或"type2"
,因此永远不会分配$price
,因为IF语句不是真的。
你可以做到
if( $type === 'type1' ) {
$price = 'something';
}
else {
$price = 'something default';
}
所以至少它总能分配一些东西。
此外,您可以查看“$type
var_dump($type)
内的内容
答案 2 :(得分:0)
你应该检查$ type isset:
$price='';
if( isset($type) ){
if( $type == "type1" ) $price = "249 kr";
if( $type == "type2" ) $price = "349 kr";
}