第5章 組み込み関数 / 第3回 模擬試験

PHPの`explode()`関数と`implode()`関数に関する次の記述のうち、誤っているものはどれか。

`explode()`は文字列を指定した区切り文字で分割し、配列として返す。
`implode()`は配列の要素を指定した区切り文字で連結し、文字列として返す。
`explode()`と`implode()`は全く同じ処理を行う関数であり、互換性がある。 正解
`implode()`は`join()`という別名でも呼び出せる。
解説
`explode()`(文字列→配列に分割)と`implode()`(配列→文字列に連結)は、互いに正反対の処理を行う関数です。「全く同じ処理を行う」という記述は誤りです。 他の選択肢が正しい理由は次の通りです。 ・`explode($separator, $string)`は、文字列を指定した区切り文字で分割し、断片からなる配列を返します。 ・`implode($separator, $array)`は、配列の各要素を指定した区切り文字でつなげ、1つの文字列として返します。 ・`implode()`には`join()`という別名(エイリアス)があり、同じ動作をします。 例: ``` $parts = explode(',', 'a,b,c'); print_r($parts); // ['a', 'b', 'c'] echo implode('-', $parts); // a-b-c echo join('-', $parts); // a-b-c(joinはimplodeの別名) ``` (参照: 独習PHP 第4版 第5章 組み込み関数 5.2.6節/5.3.3節 p.173, 193)