Mercurial > epgrec.yaz
diff reclib.php @ 140:0ded1d3bd448
enable mb_str_replace()
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Sun, 21 Mar 2010 05:45:55 +0900 |
parents | b172a0b1ea48 |
children |
line wrap: on
line diff
--- a/reclib.php Sun Mar 21 05:16:43 2010 +0900 +++ b/reclib.php Sun Mar 21 05:45:55 2010 +0900 @@ -21,4 +21,23 @@ "// -->\n</script>" ); } +// マルチバイトstr_replace + +function mb_str_replace($search, $replace, $target, $encoding = "UTF-8" ) { + $notArray = !is_array($target) ? TRUE : FALSE; + $target = $notArray ? array($target) : $target; + $search_len = mb_strlen($search, $encoding); + $replace_len = mb_strlen($replace, $encoding); + + foreach ($target as $i => $tar) { + $offset = mb_strpos($tar, $search); + while ($offset !== FALSE){ + $tar = mb_substr($tar, 0, $offset).$replace.mb_substr($tar, $offset + $search_len); + $offset = mb_strpos($tar, $search, $offset + $replace_len); + } + $target[$i] = $tar; + } + return $notArray ? $target[0] : $target; +} + ?> \ No newline at end of file