
- 2021年5月
- 2020年8月
- 2020年6月
- 2020年5月
- 2019年1月
- 2018年8月
- 2018年6月
- 2018年5月
- 2018年3月
- 2018年1月
- 2017年12月
- 2017年11月
- 2017年10月
- 2017年9月
- 2017年8月
- 2017年7月
- 2017年6月
- 2016年11月
- 2013年9月
- 2013年8月
- 2013年6月
- 2013年5月
- 2013年4月
- 2013年3月
- 2013年2月
- 2013年1月
- 2012年12月
- 2012年11月
- 2012年10月
- 2012年9月
- 2012年6月
- 2012年5月
- 2012年4月
- 2012年2月
- 2011年7月
- 2011年5月
- 2011年4月
- 2011年2月
- 2010年12月
- 2010年11月
- 2010年10月
- 2010年9月
- 2010年8月
- 2010年7月
- 2010年6月
- 2010年5月
- 2010年4月
- 2010年3月
- 2010年2月
- 2010年1月
- 2009年12月
- 2008年2月
- 2008年1月
- 2007年12月
- 2007年5月
- 2007年4月
- 2007年3月
- 2007年2月
マルチバイトの空白を判別するには? / magicien
PHPで検索機能を作る時に、検索ワードを空白で分割しようと思うと、マルチバイトな上に、半角と全角のスペースの2種類があるので、なかなか難しい。と思ったら、簡単な方法があったので、メモ。mb_splitという、マルチバイト対応の文字列分割用の関数があった。この関数で、半角、全角のスペース、タブ、改行をまとめて指定するには、[[:space:]]を使う。
$search_words = array_unique(mb_split("[[:space:]]+", $_GET['search'])); if(empty($search_words[0])){ array_shift($search_words); }
array_uniqueは重複する単語を除去する関数。$_GET['search']の先頭にスペースが入っている場合は、配列の最初は空になるので、array_shiftで取り除いておく。といった感じの処理をしてます。
この記事のURL: https://darkhorse2.0spec.jp/32/
2007/03/10(Sat) 14:32:32