php trim 全角スペースも取り除く | WEBエンジニア社長のブログ

php trim 全角スペースも取り除く

↓これだと半角スペースしか取り除かれない。

trim($param);


全角スペースも取り除きたいなら、こうする。

trim($param, " ");

とやりたいところだが、これはうまく動かない。
今の開発環境でやると、前後の2バイト文字がすべて取り除かれてしまった。


ただ、いろいろ使える。こうすれば、文字列前後の「(」が取り除かれる。

trim($param, "(");


さて、文字列の前後に含まれた全角スペースを取り除くには正規表現を使うのがいいようだ。


メモ帳@プログラマー初級 から学び、こういうのを作った。


function trim_2bytespacemo ($str) {
$str = preg_replace('/^[  ]+/u', '', $str);
$str = preg_replace('/[  ]+$/u', '', $str);
return $str;
}

*[ ]内には、半角スペースと全角スペースが1つずつ入っている。