这段代码出了什么问题:
'tiercommissionexpiration' => date('Y-m + $post["billingPeriodExpiration"]-d', strtotime($post['commissionEligibilityDate'])),
commissionEligibilityDate
是一个日期,我想将一个输入文本字段$_POST['billingPeriodExpiration']
的特定数字添加到数据库'teircommissionexpiration'
由于
答案 0 :(得分:2)
我建议您阅读有关PHP strings和date
函数的内容。我不知道您尝试POST的价值是多少,但是您不能将POST值插入到这样的单引号字符串中,并且在任何情况下它都是$_POST
。
date('Y-m' . $_POST['billingPeriodExpiration'] . '-d', ...)
date("Y-m{$_POST['billingPeriodExpiration']}-d', ...)
这两者都不会起作用,但至少在语法上对于PHP的解析是正确的 - 即使date()仍然会失败。
答案 1 :(得分:1)
我认为错误在于$post['billingPeriodExpiration']
的错误拼写。您应该写$_POST
而不是$post
。无论如何,你还要双引号字符串(不是单引号)。
答案 2 :(得分:0)
将$ post [“billingPeriodExpiration”]替换为$ _POST ['billingPeriodExpiration']
答案 3 :(得分:0)
'Y-m + $post["billingPeriodExpiration"]-d'
应该是
"Y-m + {$_POST['billingPeriodExpiration']}-d"
请注意双引号和花括号。
答案 4 :(得分:0)
答案 5 :(得分:0)
'tiercommissionexpiration' => date("Y-m + {$_POST["billingPeriodExpiration"]-d}", strtotime($_POST['commissionEligibilityDate'])),
变量不会在单引号(')中被拾取,而$_POST
var必须是大写并且具有下划线。另外,您应该在字符串中使用数组变量周围的括号{}。 (例如$n = "your name is {$user["name"]}";
)
答案 6 :(得分:0)
将变量包含在{}
中是一种良好的做法,如下所示:
date("Y-m + {$post['billingPeriodExpiration']}-d")
这样PHP就不会抱怨数组索引的单引号''
。