我注意到有些PHP字符串函数与下划线一起使用,而有些则不是
以下是示例
strlen()
strtolower()
strtoupper()
strpos()
等等。
带下划线的字符串函数
str_replace()
str_word_count()
str_split()
str_repeat()
等等。
我希望这些函数名应该像这样
str_len()
str_to_lower()
str_to_upper()
str_pos()
答案 0 :(得分:1)
这些函数中的许多函数都是以C函数命名的,并以C函数命名。这不是专门针对字符串函数;从C编程接口复制了许多其他基本的PHP函数:printf()
,fopen()
,fnmatch()
…
strlen()
是一个很好的例子。 C函数在功能上与PHP函数相同。
strpos()
实际上没有出现在C标准库中,但是strstr()
和strchr()
确实存在;命名模式非常清晰。 (strstr()
和strpos()
之间的区别在C语言中不相关,因为返回指向子字符串的指针没有任何开销。)
C中也没有strtoupper()
或strtolower()
,但是有一系列函数可将字符串转换为各种类型的数字(strtol()
,strtof()
,strtoull()
等),可能启发了这些名称。
顺便说一句,旧的MySQL扩展类似地是MySQL C API的直接副本,甚至可以追溯到mysql_real_escape_string()
之类的麻烦细节。