ctype_alpha() 是检查字符串是不是仅包含字母的更好方法吗
Posted
技术标签:
【中文标题】ctype_alpha() 是检查字符串是不是仅包含字母的更好方法吗【英文标题】:Is ctype_alpha() a better way to check if a string contains just lettersctype_alpha() 是检查字符串是否仅包含字母的更好方法吗 【发布时间】:2014-01-23 01:22:40 【问题描述】:过去,我一直使用preg_match()
来做这件事。
刚刚在http://www.php.net/manual/en/function.ctype-alpha.php 遇到ctype_alpha()
。
这是确认字符串只包含字母的更快和/或更少资源密集型的方法吗?
请注意,稍后我将在 SQL 查询中使用此字符串,并将在其周围加上引号,但不会为 SQL 注入做更多的事情。我知道这不是典型的,但是,我正在生成动态 SQL,并希望这样做。
【问题讨论】:
你对just letters
的定义是什么?
@AmalMurali A-Za-z。我想其他人也可以,只要不可能有 SQL 注入。该字符串稍后将放在 WHERE 子句中,例如 $sql="SELECT * FROM tbl WHERE col='$string'
请注意,此查询是一个简单的示例,我知道有更好的解决方案可用。
这可能会有所帮助:codepad.org/ZIuMHd1Z
@AmalMurali。听起来你的意见是“是”。看到任何负债了吗?
【参考方案1】:
ctype-alpha 可以有两个正数,而不仅仅是一个。检查php手册上关于'Tyrunur'的注释,然后认为字符串是否为空为真(第二种状态)。
所以在进入你的 sql 之前,你有:
首先为每个网络用户设置和控制每个“语言环境”, 那么是否为空并且 是否为有效字符串。在这些之后,您可以使用 ctype-alpha。 你确定这么快?我不相信。
【讨论】:
以上是关于ctype_alpha() 是检查字符串是不是仅包含字母的更好方法吗的主要内容,如果未能解决你的问题,请参考以下文章