2009年12月 9日

[PHP-users 34866]JISで文字列の置換を行いたい。

中出と申します。

理由があってJISで文字列の置換を行いたいと
思っているのですが、うまくいきません。

●スクリプト
<?php // -*- coding: utf-8 -*-
$str='%%name%%さん、こんにちは。';

$pat='%%name%%';
$rep='萩山';

$str_jis=mb_convert_encoding($str,'iso-2022-jp','UTF-8');
$rep_jis=mb_convert_encoding($rep,'iso-2022-jp','UTF-8');
$str_jis=str_replace($pat,$rep_jis,$str_jis);

$fp = fopen('data.txt', 'w');
fwrite($fp, $str_jis);
fclose($fp);
?>

スクリプトはUTF8で実装しています。
処理としては、JISの文字列から%%name%%を探し、置換を行い
ファイルに保存するとなっています。

ファイルには

萩山さん、こんにちは。

と保存されることを期待するのですが、実際には


萩山[$B$5$s!"$3$s$K$A$O!#

のようになりうまくいきません。


なお、UTF8で置換を行い、その後、JISに変換して保存するという方法は
分かっているのですが、「JISで文字列の置換」が解消した問題なので
この方法はパスしています。

よい解消方法があれば教えてください。
よろしくお願いします。

----

_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3


投稿者 xml-rpc : 2009年12月 9日 14:24
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/91263
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。