最近使い方を知ったPHPの文字列関数
ltrim(string $str [, string $charlist])
$strの左端から連続する$charlistに含まれる文字を除去する
rtrim(string $str [, string $charlist])
$strの右端から連続する$charlistに含まれる文字を除去する
trim()は知っているけど、左右限定のものがあるとは知らなかった。
そういった処理を書こうとしたら、 preg_replace("/^[ \t\n\r\0\v/]+", '', $str) って書くと思う。
substr_count(string $haystack, string $needle)
$haystackに$needleが何回出現するかを返す
php > echo substr_count('ccccccccc', 'cc');
4
php > echo substr_count('ccccccccc', 'ccc');
3
使い方はわかったけど、名前が悪い。なぜsubstr_というprefixなのかわからない。
substr_replace(mixed $string, mixed $replacement, mixed $start [, mixed $length])
$stringの$start位置から$lengthの長さの分の文字を$replacementに置き換える。$lengthを指定しない場合は、$replacementの長さ分の文字が置き換えられる。
php > $string = array('mutsuki', 'kuma');
php > $replacement = array('fumi', 'ta');
php > $start = array(0, 0);
php > $length = array(2, 2);
php > var_dump(substr_replace($string, $replacement, $start, $length));
array(2) {
[0] =>
string(7) "fumitsuki"
[1] =>
string(4) "tama"
}
strrev(string $str)
$strの文字列を逆順にして返す
php > echo strrev('yamamotoyama');
amayotomamay
何に使うんだこれ?
str_repeat(string $input, int $multiplier)
$inputを$multiplier回繰り返した文字列を返す
php > echo str_repeat('!すでのな', 3);
!すでのな!すでのな!すでのな
何に使うんだこれ?
strpad(string $input, int $pad_length [, string $pad_string = " "])
長さが$pad_lengthになるまで$stringに$pad_stringを繰り返し追加した文字列を返す
php > $ships = array(array('type' => 'HC', 'name' => 'Chokai'), array('type' => 'BC', 'name' => 'Kirishima'), array('type' => 'DD', 'name' => 'Mochizuki'));
php > foreach($ships as $ship) echo str_pad($ship['name'], 10) . $ship['type'] . "\n";
Chokai HC
Kirishima BC
Mochizuki DD
get_meta_tags(string $filename)
指定したHTMLファイル(URL可)のmetaタグ情報を連装配列にして返す
php > var_dump(get_meta_tags('http://www.yahoo.co.jp'));
array(1) {
'description' =>
string(282) "日本最大級のポータルサイト。検索、オークション、ニュース、天気、スポーツ、メール、ショッピングなど多数のサービスを展開。あなたの生活をより豊かにする「課題解決エンジン」を目指していきます。"
}
strtok(string $str, string $token)
$strを$tokenで分割し、分割してできた文字列を返す。2回目以降は引数に$tokenのみ指定する。
php > $str = '気合い,入れて,いきます';
php > $token = ',';
php > echo strtok($str, $token) . "!\n"; while ($tmpToken = strtok($token)) echo "{$tmpToken}!\n";
気合い!
入れて!
いきます!
初回と2度目以降で呼び出しが変わるって・・・誰が使うんだこの関数?