我想不出不发送字符串数组的理由。
一个字符串是一个单独的实体。你的同事使用字符串“对象”(在变量或实体的意义上)来使其携带信息,这是一种非常简单的特定领域语言。
但正如它已经显示的那样,这只是额外的开销,而不是必要的。可能那个人只是懒得打字,认为这更酷。真正更酷的是,升级PHP并使用新的数组表示法。它也很简短,并且比需要解析器(例如使用分隔字符的explode函数)的字符串携带更多信息:
explode("|", "value1|value2|value3");
array("value1", "value2", "value3");
["value1", "value2", "value3"];
如果你想知道你的同事有多认真:他在玩。玩耍是可以的,但如果他需要用权力游戏来展示他可以压制共享代码库中的风格,那就打他的手指。那很愚蠢。如果你需要一个数组,就传递一个数组。
这不像正则表达式那样。这只是你的同事自嘲地将问题引入到代码库中。仅仅因为某些事情是可能的,并不意味着它更好。
“我想不出不发送字符串数组的理由。”
嗯,我能想象一些可能的原因:
- 其他人只是想展示他们与你不同的知识,并且有说服项目中每个人的力量(社交问题)。
- 你不能接受你在团队中的地位太低,甚至不能提出合理的论点来说服其他人,所以你跑到这里抱怨,因为你希望你能得到更多的力量而不是逐步升级你的团队(社交问题)。
- 那个家伙只是个混蛋,想引入秘密复杂性,这样只有他才能编辑和更改代码(职业管理,也可能是社交问题的迹象)。
请不要太认真对待这些评论 ;)问问没关系,但没有太多的答案,因为这闻起来有点可疑,因为可能有一些理由使得这样的东西很有用(尽管我对此表示怀疑,因为用一些小的OOP事情开始看起来真的很不同)。所以这总是取决于具体情况,但尽量保持你编辑的代码简单易懂,不要添加太多魔法。你可以把那个字符串看作是一个神奇的数组。