这是我第一次使用PHP,我在制作基本的if / then语句时遇到了麻烦。我想做像
这样的事情如果文件存在 显示HTML代码 其他 显示不同的HTML代码。
这是我现在的位置 -
<?php
if ( file_exists('pdf/'.'htmlspecialchars($_POST['apt'], ENT_COMPAT)'.'.pdf') {
echo "the file exists";
} else {
echo "file does not exist";
}
?>
我认为这里的问题是我如何编写
file_exists('pdf/'.'htmlspecialchars($_POST['apt'], ENT_COMPAT)'.'.pdf')
非常感谢!
答案 0 :(得分:3)
尝试:
if (file_exists('pdf/' . htmlspecialchars($_POST['apt'], ENT_COMPAT) . '.pdf')) {
echo "the file exists";
} else {
echo "file does not exist";
}
在致电htmlspecialchars()
之前,您有一些报价。当你调用一个函数时,你不需要引号。
另请参见您没有关闭括号。
答案 1 :(得分:2)
您有引号问题:
file_exists('pdf/'.htmlspecialchars($_POST['apt'], ENT_COMPAT).'.pdf')
答案 2 :(得分:2)
有两个问题。首先,在if
条件结束时,您错过了一个结束括号,其次,在htmlspecialchars
的调用周围,您有不应该引用的引号。
正确的代码是:
if (file_exists('pdf/'.htmlspecialchars($_POST['apt'], ENT_COMPAT).'.pdf')) {
echo "the file exists";
} else {
echo "file does not exist";
}
答案 3 :(得分:1)
你不需要htmlspecialchars。它会将不正确的字符转换为更不正确的字符。例如'变成&amp; #0 3 9; (没有空格)