Str クラス
str クラスは、文字列の操作を手助けするメソッドの集合です。
increment($str, $first = 1)
increment メソッドは、文字列の後ろに数字を付加したり、既に数字が付いている場合はそれに 1 加算します。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$string |
必須 |
対象の文字列 |
$first |
1
|
加算を開始する最初の番号 |
|
返り値 |
string |
例 |
$string = "filename";
Str::increment($string); // 返り値: filename_1
$string = "filename_1";
Str::increment($string); // 返り値: filename_2
$string = "filename";
Str::increment($string, 3); // 返り値: filename_3
|
random($type = 'alnum', $length = 8)
random メソッドは、type で指定された文字種のランダムな文字列を生成します。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$type |
alnum |
生成する文字列の文字種。(選択肢: alnum, numeric, nozero, alpha, distinct, hexdec, unique, sha1) |
$length |
16
|
生成する文字列の長さ。 (unique と sha1 の場合は無視します) |
|
返り値 |
string |
例 |
// alnum (アルファベット大文字、小文字、数字)
Str::random('alnum', 16);
// Returns: SvZi9Dh3lq7zQYim
// numeric (数字のみ)
Str::random('numeric', 16);
// Returns: 1045343964672481
// nozero (0 を除いた数字)
Str::random('nozero', 16);
// Returns: 3244623373994515
// alpha (アルファベット大文字と小文字)
Str::random('alpha', 16);
// Returns: LuVAXbmxQbbWoYqz
// distinct (読み間違えづらいアルファベット大文字と数字)
Str::random('distinct', 16);
// Returns: R79MPKMH4KTRN35J
// hexdec (16進数の文字列: a-f, 0-9)
Str::random('hexdec', 16);
// Returns: 09c34e42f36547f8
// unique (md5 を基にした32文字の文字列)
Str::random('unique');
// Returns: ed4bb844a35b7a4edb7eed0d3795d328
// sha1 (sha1 を基にした40文字の文字列)
Str::random('sha1');
// Returns: af5c5a8cc3be9a3180205c1ed2975015cd6cf1e7
|
truncate($string, $limit, $continuation = '...', $is_html = false)
truncate メソッドは、文字列を指定した長さで切り詰めます。文字列が HTML を含む場合は、それを破壊しないようにすることもできます。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$string |
必須 |
切り詰める文字列 |
$limit |
必須 |
文字列の最大長 (文字列の長さがこの値を超えると切り詰める) |
$continuation |
'...'
|
切り詰めた文字列の末尾に付加する文字列 |
$is_html |
false
|
文字列が HTML を含む場合、この引数を true にすると、このメソッドは HTML タグを破壊しません。 |
|
返り値 |
string |
例 |
$string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.";
Str::truncate($string, 15); // 返り値: Lorem ipsum dol...
$string = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.";
Str::truncate($string, 15, '...Read More'); // 返り値: Lorem ipsum dol...Read More
|
alternator(*$args)
Returns a closure that will alternate the values you've passed to this method as arguments, unless you
call the closure with false as argument - in which case it will just return the value
without moving to the next and return the same value on the next call.
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
*$args |
必須 |
As many arguments as you need to alternate |
|
返り値 |
Closure |
例 |
$alt = Str::alternator('one', 'two', 'three', 'four');
echo $alt(); // outputs 'one'
echo $alt(); // outputs 'two'
echo $alt(false); // outputs 'three', but doens't move to the next as you can see in the next call
echo $alt(); // outputs 'three'
echo $alt(); // outputs 'four'
echo $alt(); // outputs 'one'
// etc...
|
upper($str, $encoding = null)
upper メソッドは、すべてのアルファベットを大文字に変換します。特定の文字のエンコーディングについては、PHP の strtoupper() と同等です。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
$encoding |
string |
null
|
文字エンコーディング |
|
返り値 |
string |
例 |
Str::upper('User Data'); // 返り値: 'USER DATA'
|
lower($str, $encoding = null)
lower メソッドは、すべてのアルファベットを小文字に変換します。特定の文字のエンコーディングについては、PHP の strtoupper() と同等です。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
$encoding |
string |
null
|
文字エンコーディング |
|
返り値 |
string |
例 |
Str::lower('User Data'); // 返り値: 'user data'
|
tr($string, $array = array())
tr メソッドは、PHP の strtr() を用いて、与えられた文字列からパラメータをパースします。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
$array |
array |
array()
|
str_replace に渡すパラメータ |
|
返り値 |
string |
例 |
Str::tr('Hello :name', array('name' => 'World')); // 返り値: 'Hello World'
|
is_json($string)
is_json メソッドは、文字列が json エンコードされているかチェックします。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
|
返り値 |
bool |
例 |
Str::is_json('{"0":"An","encoded":["string"]}'); // 返り値: true
|
is_serialized($string)
is_serialized メソッドは、文字列が PHP シリアライズされているかチェックします。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
|
返り値 |
bool |
例 |
Str::is_serialized('a:2:{i:0;s:2:"An";s:7:"encoded";a:1:{i:0;s:6:"string";}}');
// 返り値: true
|
is_html($string)
is_html メソッドは、文字列が HTML かチェックします。
Static |
Yes |
パラメータ |
パラメータ |
型 |
規定値 |
説明 |
$string |
string |
必須 |
入力文字列 |
|
返り値 |
bool |
例 |
Str::is_html('Lorem ipsum <b>dolor sit amet</b>, consectetur <u>adipiscing</u> elit.');
// 返り値: true
|
is_xml($string)
The is_xml method check if a string is a valid xml. Requires the libxml extension.
Static |
Yes |
Parameters |
Param |
Type |
Default |
Description |
$string |
string |
Required |
The input string. |
|
Returns |
bool |
Example |
Str::is_xml('<?xml version="1.0" encoding="utf-8"?><xml><foo>bar</foo></xml>');
// returns true
|
starts_with($str, $start, $ignore_case = false)
starts_with メソッドは、文字列が指定した文字列で始まっているかチェックします。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$str |
必須 |
チェック対象の文字列 |
$start |
必須 |
この文字列で始まっているか |
$ignore_case |
false
|
大文字小文字を無視するかどうか |
|
返り値 |
bool |
例 |
$string = "Lorem ipsum dolor sit amet";
Str::starts_with($string, 'Lorem'); // 返り値: true
Str::starts_with($string, 'lorem'); // 返り値: false
Str::starts_with($string, 'lorem', true); // 返り値: true
|
ends_with($str, $end, $ignore_case = false)
ends_with メソッドは、文字列が指定した文字列で終わっているかチェックします。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$str |
必須 |
チェック対象の文字列 |
$end |
必須 |
この文字列で終わっているか |
$ignore_case |
false
|
大文字小文字を無視するかどうか |
|
返り値 |
bool |
例 |
$string = "Lorem ipsum dolor sit amet";
Str::ends_with($string, 'amet'); // 返り値: true
Str::ends_with($string, 'Amet'); // 返り値: false
Str::ends_with($string, 'Amet', true); // 返り値: true
|
sub($str, $start, $length = null, $encoding = null)
sub メソッドは、指定された文字列の一部分を返します。特定の文字のエンコーディングについては、PHP の substr() と同等です。
Static |
Yes |
パラメータ |
パラメータ |
規定値 |
説明 |
$str |
必須 |
入力文字列 |
$start |
必須 |
開始位置 (詳細は php.net を参照してください) |
$length |
null
|
文字数の最大値 (詳細は php.net を参照してください) |
$encoding |
null
|
文字エンコーディング |
|
返り値 |
string |
例 |
Str::sub('User Data', 3, -1); // 返り値: 'r Dat'
|