- 2008-04-18 (Fri) 10:31
- 開発ツール・技術

R*PADのメンテナンスしたときに使った方法をメモ。いつも忘れちゃうので。
PHPでソースコードはUTF-8で書きたいけど、このページだけShift-JISで出力したいってときありますよね(ケータイサイト作っているときとか)。
その場合、以下のような方法でやっています(いつもながら青い人に教えてもらいました!感謝!)。
<?php
header('Content-Type: text/html; charset=Shift_JIS');
ob_start();
?>
ここにShift-JISで出力したい内容をUTF-8で記述。
<?php
$output = ob_get_contents();
ob_end_clean();
echo mb_convert_encoding($output, "SJIS", "UTF-8");
?>
まぁ、なんということのないメモですが、かつての僕がそうであったように「どうやんだろ?」と思っている人もいるかなと・・・(ちなみに以前はこのページのソース自体をShift-JISで書いていましたよ・・・イタタ)。
- Newer: 【東京ブック】 ビジネス用語を変換する
- Older: 有名人の名前に映像がポップアップするリンクを仕込める『Name Widget』
Comments:1
- mi 08-04-18 (Fri) 17:37
-
http://www.ecoop.net/memo/2008-04-18-2.html
こんなかんじで .htaccess でやるのはどうでしょう?
.htaccess で php_value, php_flag を使って設定すると既存のソースを直接いじらずにフォルダ単位でまとめて文字コード変更できるので重宝してます。
AllowOverride 権限不足していたり CGI の場合は使えませんが…。
Trackbacks:1
- Trackback URL for this entry
- http://www.ideaxidea.com/archives/2008/04/phpob_start.html/trackback
- Listed below are links to weblogs that reference
- 文字コードを変えて一気に出力する方法(PHPのob_start) from IDEA*IDEA ~ 百式管理人のライフハックブログ ~
- trackback from 弱小PHPerの憂鬱 09-05-25 (Mon) 18:51
-
PHP1-77:出力バッファリング
基本的にPHPはprint()とかecho()とか書いた時点で文字が出力されますが、小出しに出力せずにバッファに保存しておいて、後で一気に出力、なんてことができます。
ob_start.php
…

