こんにちは、さるまりんです。
今回はPHPの小ネタです。
いろんなデータを扱っていて文字列の前後を”で括っているものに出会すことがあります。
実際に使うときは"
を取り除いて
"Tokyo, Japan" => Tokyo, Japan
にしたいです。
それをどうやってやろうか考えていました。
こんな感じにsubstr
関数で2文字目から最後の1文字手前までの部分文字列を取り出す?
$str = '"Tokyo, Japan"';
$len = strlen($str);
echo substr($str, 1, $len-2);
いえいえ、そんな必要全くなかったんです。
簡単にこれで大丈夫です。
$str = '"Tokyo, Japan"';
echo trim($str, '"');
trim
関数の第二引数に前後から取り除きたい文字を指定するだけでできたのです。
前、後ろ、それぞれから文字を削除するltrim
、rtrim
関数でも同じでした。
上の例の
trim($str,'"');
ではダブルクォートのみですが、シングルクォートも削除対象にしたければ、
trim($str,'\'"');
でOKです。
いつもtrim($str)
としてしか呼び出していなかったのでこれ知らなかったです。。
教訓:ドキュメントはしっかり読もう。
読んでくださってありがとうございました。
それではまた。