这个问题在这里已经有了答案:关闭12年前。PossibleDuplicates:PHP:theultimateclean/securefunctionWhat'sthebestmethodforsanitizinguserinputwithPHP?我应该向我的函数添加什么以确保传递给它的每个字符串都是“服务器友好的”?我使用这个小函数来检查包含姓名、电子邮件地址和ID的输入。functioncheckInput($str){$str=@strip_tags($str);$str=@stripslashes($str);$str=mysql_real_escape_string($str
我有一个关于str_replace的小问题。我有一个带有破折号(-)的字符串,如下所示:Iwanttoremove-thedashhtml输出是Iwanttoremovethe–thedash我想这样做:$new_string=str_replace('-','',$string);我尝试用html_entity_decode解析字符串,用htmlspecialchars解析要删除的字符,但没有任何结果。我做错了什么?-编辑-这是我的脚本的完整代码:$title='SuperMarioGalaxy2-DebutTrailer';//FetchedfromtheDB,inth
这是我在这个很棒的网站上提出的第一个问题。假设我有一个字符串$a="sometext..%PROD%moretext"字符串中只有一个%..%。我需要将%之间的PROD替换为另一个变量内容。所以我曾经这样做:$a=str_replace('%PROD%',$var,$a);但现在%之间的PROD开始出现在不同的情况下。所以我可以期待产品或产品。所以我在进行替换之前将整个字符串设为大写。但副作用是原始字符串中的其他字母也变成了大写。有人建议我使用正则表达式。但是如何呢?谢谢,罗汉 最佳答案 您可以使用str_ireplace功能。它类
如何使用codeigniter删除ALLHTML标签?我猜你必须使用PHP函数strip_tags,但我想要类似XSS过滤的全局设置谢谢 最佳答案 如果您指的是使用input方法,是的,您可以在技术上打开system/libraries/Input.php,前往以下代码:/***CleanInputData**Thisisahelperfunction.Itescapesdataand*standardizesnewlinecharactersto\n**@accessprivate*@paramstring*@returnstri
我必须创建一个登录表单,用户将在其中插入用户名和密码。我必须确保不处理html实体,并且我也不允许处理单引号或双引号。我必须回应输入到表单中的数据并显示它。我必须使用htmlentities和str_replace。我的htmlentities是正确的,但不确定如何使用str_replace函数来替换用户可能输入到表单中的单引号和双引号。任何帮助都会很棒。这是我当前的PHP(有效)Yourusernameis:Yourpassword:YourCommentwas: 最佳答案 首先,检查不需要的字符并返回给用户总是比默默地剥离它们更
我在这里尝试做的是创建一个函数,每次调用时将相同的输入加密为完全不同的输出。此函数的基础是异或,但要防止容易发现字符串中的重复模式。我添加了基于时间和字符串部分的随机散列,以在解密时进行self验证。我所要求的是,如果我在这里犯了任何类型的错误,可能会向有经验的人显示隐藏的文本,而无需对字符串进行暴力破解。(我知道php有一个仅用于加密的模块,但这是一个糟糕的版本,以防加密模块不可用。)第二:我不要求你重写这个函数或为我写一些东西,我要求的是简单的指导我做错了什么。我知道一个可能的安全漏洞是我默认使用salsa,它对空字符串全为零,但优点是这是php中可用的最长哈希,其次,哪个傻瓜会使
我不能使用strtolower因为它影响所有角色。我应该使用某种正则表达式吗?我得到一个字符串,它是一个产品代码。我想将此产品代码用作其他位置的搜索关键字,首字母小写。 最佳答案 尝试lcfirst—使字符串的第一个字符小写对于PHPif(!function_exists('lcfirst')){functionlcfirst($str){$str=is_string($str)?$str:'';if(mb_strlen($str)>0){$str[0]=mb_strtolower($str[0]);}return$str;}}与仅
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。我的问题是在str_replace上使用数组是否比多次执行它更快。我的问题只针对两个替换。用数组$phrase="Youshouldeatfruits,vegetables,andfibereveryday.";$healthy=array("fruits","vegetables");$yummy=array("pizza","beer");$newp
$search=array('A','B','C','D','E');$replace=array('B','C','D','E','F');$subject='A';$trans=array('A'=>'B','B'=>'C','C'=>'D','D'=>'E','E'=>'F');echostr_replace($search,$replace,$subject);echo"";echostrtr($subject,$trans);Output:FB当使用str_replace我得到F,使用strtr我得到B据我所知,对于str_replace:它从左到右替换,因此A被B替换而不标
我一直在尝试遍历一个字符串并查找URL并将其替换为一个链接,这里是我到目前为止所得出的结果,它似乎在大多数情况下工作得很好,但是有几件事我想打磨。此外,它可能不是执行此操作的最佳方式。我已经在SO上阅读了很多关于此的主题,虽然它帮助很大,但我仍然需要解决它的问题。我在字符串中运行了两次。我第一次用html标签替换bbtags;第二次我遍历字符串并用链接替换文本url:$body_str=preg_replace('/\[url=(.+?)\](.+?)\[\/url\]/i','\2',$body_str);$body_str=preg_replace_callback('!(?:^|