在这两个非常核心的PHP函数中,参数haystack
和needle
的顺序不一致:
为什么会这样?
答案 0 :(得分:1)
实际上,它们并不像许多人认为的那样前后矛盾。您已经部分发现了一致性:
所有字符串函数都是(干草堆,针)
所有数组函数都是(针,干草堆)
Rasmus Lerdorf(PHP的创建者)在2019年大约25分钟的一次演讲中指出:
25年PHP-phpday 2019
https://youtu.be/iGOAQli7tGc?t=1485
16:45,他有一张名为“他在想什么”的幻灯片。他解决了“命名不一致”问题。 (针头/干草堆问题只是其中之一)
https://youtu.be/iGOAQli7tGc?t=1005
在本次演讲中,他还解释了他对PHP的设计决策几乎全部基于PHP是“底层C库的包装器”的思想,并且使参数与底层代码的顺序保持一致。>