PHP :: CLI / 文字コード変換を行うワンライナー

UTF-8 から SJIS に変換

   
%some_command | php -r 'while($stdin=fgets(STDIN,4096)) echo mb_convert_encoding($stdin, "SJIS", "UTF-8");'
   



UTF8 で 保存されたテキスト「utf8.txt」の内容

あいうえお

less コマンドで開く(端末の出力設定は SJIS)

% less utf8.txt
<E3><81><82><E3><81><84><E3><81><86><E3><81><88><E3><81><8A>

パイプで文字コード変換処理に渡す


% less utf8.txt | php -r 'while($stdin=fgets(STDIN,4096)) echo mb_convert_encoding($stdin, "SJIS", "UTF-8");'
あいうえお