如何添加文本,如果htmlspecialchars是空白的??例如,example.com/name.php?name=Bahirah
,如果"name="为空,那么我如何添加文本说'请输入名称'一个例子:example.com/name.php?name=
或example.com/name.php
,如果url看起来像没有任何后面的"="或没有任何htmlspecialchars那么我希望文本说'请输入名称'
我认为你想检查url参数以获取当前url,你可以查看下面的链接
获取完整的PHP URL
url的代码为:-美元actual_link = " http://$ _SERVER HTTP_HOST $ _SERVER [REQUEST_URI]";
现在你可以通过正则表达式检查如果name为空,就像这样
$actual_link="http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$pattern = "/[^=]+$/"; // this will give u full string after last '=' sign
preg_match($pattern,$actual_link , $matches);
print_r($matches); //this will give array
我已经测试过了,得到了预期的结果,试一下
OK,我不认为这与htmlspecialchars有关,更多的是与字符串,子字符串和字符位置有关。你的问题也相当"宽泛",因为你正在查看的字符串将在提交页面或表单后收到,然后你必须分析字符串并通知用户他们需要输入更多数据。您最好在完成表单时这样做。您可以检查'='或'.php'或两者之后的任何字符,甚至只是检查返回的字符串的长度,但我不知道字符串返回的变量可能是多少。所以根据你告诉我的,这可能会有帮助....
<?php
function AnyThingThere($string, $substring) {
$pos = strpos($string, $substring);
if ($pos === false)
return $string;
else
return(substr($string, $pos+strlen($substring)));
}
echo AnyThingThere('example.com/name.php?name=', '=');
?>
这将返回'='之后的所有内容
如果我把代码改成<?php
function AnyThingThere($string, $substring) {
$pos = strpos($string, $substring);
if ($pos === false)
return $string;
else
return(substr($string, $pos+strlen($substring)));
}
echo AnyThingThere('example.com/name.php?name=', '.php');
?>
它会返回
"?"