文字列関係の関数色々

Pocket

概要

phpにはこんな感じの関数があるって程度です
流し読みしておいて下さい

たまに使う関数色々

nl2br — 改行文字の前に HTML の改行タグを挿入する
number_format — 数字を千位毎にグループ化してフォーマットする
strlen — 文字列の長さを得る
str_repeat — 文字列を反復する。正規表現のpreg_replaceより高速
substr — 文字列の一部分を返す。vbaで言うmid
wordwrap — 指定した文字数で文字列を分割する

置換

str_replace — 検索文字列に一致したすべての文字列を置換する
substr_replace — 文字列の一部を置換する。対象は文字列長で指定

文字列検索。

通常はstrposでいいと思う
mb_をつけるとマルチバイト(Unicode)用になる。アルファベットなら全角にも対応できるようになる。
mb_はつけっぱなしで良い

検索し、位置を返す

大文字小文字を区別する
mb_strpos – 文字列内の部分文字列が最初に現れる場所を見つける
mb_strrpos — 文字列中に、ある部分文字列が最後に現れる場所を探す

大文字小文字を区別しない

mb_stripos — 大文字小文字を区別せずに文字列が最初に現れる位置を探す
mb_strripos — 文字列中で、特定の(大文字小文字を区別しない)文字列が最後に現れた位置を探す

文字列を検索し、文字列を返す

mb_strstr — 文字列が最初に現れる位置を見つけ、以降の文字列を返す。第三引数をtrueにするとそれより前の文字列を返す。その場合文字列は含まないので注意
mb_stristr — 大文字小文字を区別しない strstr()

文字を検索し、文字列を返す。多分使わない

mb_strpbrk 任意の文字以降の文字列を取得
mb_strrchr — 任意の文字以降の文字列を後ろから探して取得

csv

str_getcsv — CSV 文字列をパースして配列に格納する

文字列と配列。

phpの文字列は配列ではない。こういうのはできない
foreach(‘abcde’ as $key){
echo $key;
}

文字列の大文字小文字変換

mb_strtolower — 文字列を小文字にする
mb_strtoupper — 文字列を大文字にする
ucfirst — 文字列の最初の文字を大文字にする

文字エンコーディングを変換する。

mb_convert_encoding
主にスクレイピングで使う
// utf-8に変換する時はこう
$str = mb_convert_encoding ( $str, “UTF-8”, mb_detect_encoding ( $str, “ASCII,JIS,UTF-8,CP51932,SJIS-win”, true ) );

使わない

mb_strwidth 文字列の幅を返すが、ピクセル単位ではなく半角が1、全角が2といった感じ。使い物にならない

php

Posted by admin8admin