PHPで文字列の操作(検索、置換、切り出し)
2014/07/03
しばしば行う文字列の操作をまとめておく。
-----
■文字列の長さを調べる
echo mb_strlen($str); //結果->5
echo mb_strlen($str2); //結果->5
文字数のカウント。尚、落とし穴もあるとのこと。
・参考元
http://itpro.nikkeibp.co.jp/article/COLUMN/20070307/264117/
-----
■文字列の検索
$str = 'あいうえお';
echo mb_strpos($str, 'う'); //結果->2
echo mb_strpos($str, 'か'); //結果ー>false
条件分岐で使うときは型一致(===)でやったほうがいいみたい。
if (mb_strpos($str, 'か') === false) {
//文字が入っていない場合の処理
} else {
//入っている場合の処理
}
-----
■文字列の置換
$str = 'あいあえお';
echo str_replace('あ', 'テスト', $str); //結果ー>テストいテストえお
-----
■文字列の切り出し
$str = 'あいうえおabcde'
echo mb_substr($str, 0, 5); //結果->あいうえお
開始文字の場所,切り出す文字数になる。
切り出す文字数の部分が、終了文字の場所と
勘違いしそうなので注意する。
-----
■よく使う組み合わせ
10文字以上ならはしょって語尾に「・・・」をつける、という処理。
$str = 'あいうえおかきくけこさしすせそ';
if (mb_strlen($str) >= 10) {
$str = mb_substr($str, 0, 10) . '・・・';
}
echo $str;
-----
以上。
関連記事
画像をアップロードすると複数サムネイルを生成する方法
フォームで画像をアップロードすると、予め定めておいた大中小のサイズでサムネイル画 ...
PukiWikiでバックアップを週一等スケジュール化して実行する方法
PukiWikiでバックアップを取りたかった。調べたらディレクトリごと保存すれば ...
mb_convert_variablesとmb_convert_encodingの違い
両関数の違いについて、引数の場所というか順番が違うだけ? と思ってたけどどうにも ...
PhpSpreadsheetでフォーマット用のエクセルを読み込み、指定したセルにデータを書き込んだ上で別名で保存する方法
PHPで納品書等のフォーマット用のExcelを読み込み、指定したセルにデータを書 ...
Codeigniter4でエラーログ設定、出力及び確認方法
Codeigniter4.4.4でエラーログの設定を行い特定のファイルに出力させ ...