已解决,谢谢大家的反馈!非常感激。
如果有人可以帮助解决我遇到的简单语法问题,我将不胜感激。我还处于php的学习阶段,似乎无法解决这个问题。在下面的代码中,我正在分配一个数组和一个定义,但是当我尝试回显信息时,它无法正常工作。
$arr_features=array("PasswordProtect");
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: "echo ($_POST['PasswordProtect']);"");
所以基本上“你的密码是:”部分不起作用,任何想法为什么?提前谢谢。
答案 0 :(得分:2)
因为你正在学习PHP:
echo()
会将字符串输出到呈现的HTML。
如果要将字符串(生成与否)附加到另一个字符串的末尾,则需要使用串联运算符将它们连接起来,这在PHP中是.
(是的,一个点)。
在您的示例中,它变为:
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: " . $_POST['PasswordProtect']);
答案 1 :(得分:1)
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: " . $_POST['PasswordProtect']);
答案 2 :(得分:1)
因为您尝试在字符串中嵌入语句。而是正确的语法
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: {$_POST['PasswordProtect']}");
答案 3 :(得分:1)
$arr_features=array("PasswordProtect");
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: ".$_POST['PasswordProtect']);
这是正确的代码
答案 4 :(得分:1)
要在字符串中输出变量,您需要使用.
连接符:
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: " . $_POST['PasswordProtect']);
或大括号{}
:
$arr_FeaturesDescriptions = array("Password Protection: Password Protection will be enabled, requiring participants to enter a password in order to access the event. Your password is: {$_POST['PasswordProtect']}");
答案 5 :(得分:1)
您应该从$ _POST过滤数据,然后在您的代码中使用它。因为您使用双引号,所以您可以轻松地以这种方式插入变量,因为PHP中的双引号字符串将评估其中的变量:
$passwordprotect = validate_input($_POST['PasswordProtect']);
$arr_features=array("PasswordProtect");
$arr_FeaturesDescriptions = array("Password Protection: ... Your password is: $passwordprotect");
但无论如何,你真的不应该显示明文密码。
答案 6 :(得分:1)
而不是echo()
,您应该使用string concatenation。您可以在引号字符串中将$_POST['PasswordProtect']
括在花括号({})中,或者将值附加到带有'。'的字符串末尾。操作
这是php.net上string data type documentation的链接,详细说明了在PHP中处理字符串的不同方法。