【PHP・正規表現】OR条件の可読性を高くする例|implode関数

PHPで正規表現を利用し複数の文字列を検索する場合、複数の文字列を'|'(パイプ)で区切るOR条件を利用すると思います。
今回は、その正規表現のOR条件を、implode関数を利用し文字列の可読性を高くする例となります。
【PHP・正規表現】OR条件の可読性を高くする例
以下は、ブラウザのユーザーエージェントから、スマホの場合のユーザーエージェントを検索する場合に使用される正規表現のOR条件の例ですが、検索する文字列が多いため可読性が低いです。
/iPhone|iPod|Android.*Mobile|Windows.*Phone|blackberry9500|blackberry9530|blackberry9520|blackberry9550|blackberry9800|webOS/i
上記のように、正規表現のOR条件で指定する文字列が多い場合、次のようにimplode関数を使うと可読性が高くなります。
implode関数の例
以下、implode関数を利用し、正規表現のOR条件で指定する例となります。
// 正規表現で検索する文字列を配列で指定
$useragents = array(
'iPhone', // iPhone
'iPod', // iPod touch
'Android.*Mobile', // Android スマホ
'Windows.*Phone', // Windows Phone
'blackberry9500', // Storm
'blackberry9530', // Storm
'blackberry9520', // Storm v2
'blackberry9550', // Storm v2
'blackberry9800', // Torch
'webOS' // Palm Pre Experimental
);
$pattern = '/' . implode( '|', $useragents ) . '/i';
implode関数で正規表現のOR条件を作成するには、OR条件に指定する文字列を第2引数に配列で指定し、第1引数に区切り文字列として'|'(パイプ)を指定します。
それにより、可読性が高い正規表現となります。