PHP 5.6.0 released

mb_regex_encoding

(PHP 4 >= 4.2.0, PHP 5)

mb_regex_encoding現在のマルチバイト正規表現用のエンコーディングを取得または設定する

説明

mixed mb_regex_encoding ([ string $encoding = mb_regex_encoding() ] )

現在のマルチバイト正規表現用のエンコーディングを取得または設定する

パラメータ

encoding

encoding パラメータには文字エンコーディングを指定します。省略した場合は、 内部文字エンコーディングを使用します。

返り値

encoding が設定された場合、成功した場合に TRUE を、失敗した場合に FALSE を返します。 このとき、内部文字エンコーディングは変更されません。 encoding が省略された場合、現在のマルチバイト用の正規表現関数で用いる文字エンコーディング名を返します。

変更履歴

バージョン 説明
5.6.0 デフォルトのエンコーディングが EUC-JP から UTF-8 に変わりました。

参考

  • mb_internal_encoding() - 内部文字エンコーディングを設定あるいは取得する
  • mb_ereg() - マルチバイト文字列に正規表現マッチを行う

add a note add a note

User Contributed Notes 3 notes

up
2
php dot net at phor dot net
3 years ago
Beware, mb_regex_encoding does not support the same set of encodings as listed in mb_list_encodings.php

Example:

<?php
mb_internal_encoding
('CP936');
mb_regex_encoding('CP936'); # this line produces an error
?>
up
0
zl at zl dot hu
5 years ago
Return values vary in setting and getting:

<?php
 
echo mb_regex_encoding();
 
// returns encoding name as a string
?>

<?php
 
echo mb_regex_encoding("UTF-8");
 
// returns true (success) of false as a boolean
?>
up
-1
Anonymous
5 years ago
To change algo the regex_encodign
<?php
echo "current mb_internal_encoding: ".mb_internal_encoding()."<br />";
echo
"changing mb_internal_encoding to UTF-8<br />";
mb_internal_encoding("UTF-8");
echo
"new mb_internal_encoding: ".mb_internal_encoding()."<br />";

echo
"current mb_regex_encoding: ".mb_regex_encoding()."<br />";
echo
"changing mb_regex_encoding to UTF-8<br />";
mb_regex_encoding('UTF-8');
echo
"new mb_regex_encoding: ".mb_regex_encoding()."<br />";
?>
To Top