needle、haystack。

この英単語はPHPの公式リファレンスでよく見かける。

以前からどういう意味なんだろうと思いつつよく分からないまま放置していたが、調べてみると凄くしっくりきたのでメモ。

関数の引数部分にneedleとかhaystackとか書いてあって、いやどっちがどっちやねん。。。とか思ってたけど、非常に納得。

今後はわざわざ別ページに調べに行くこともなくなりそうである。

まず上記二つの英単語は「干し草」と「針」を意味している。

haystack = 干し草

needle = 針

もうこの時点であーなるほどって思ったけど、この単語が慣習的に用いられている理由は上記単語を用いた英語の慣用句にあるらしい。

 

needle in a haystack.
見つけることが不可能なもの。

look for a needle in a haystack.
望みのない捜し物をする、むだ骨を折る。

 

例えば文字列を検索する関数で、引数にhaystackとあれば、そこには検索対象文字列を渡し、needleには探したい文字列を渡せばいいわけである。

うん。とても理にかなっている。公式リファレンスに抵抗が無くなった瞬間であった。笑