Perl 内部文字列について デコード エンコード

参考サイト

https://perlzemi.com/blog/20091118124667.html

use warnings; 追加
use Encode; 追加
use utf8;追加

下記追加
binmode STDIN, “:encoding(utf8)”;
binmode STDOUT, “:encoding(utf8)”;
binmode STDERR, “:encoding(utf8)”;

下記追加

デコード 外部入力(検索ページからPOSTされてくる値)で日本語はデコードして内部文字に変換する

$mod = Encode::decode(‘utf8’,$mod);
$f_name = Encode::decode(‘utf8’,$f_name);
$f_branch = Encode::decode(‘utf8’,$f_branch);
$f_city = Encode::decode(‘utf8’,$f_city);
$f_recog = Encode::decode(‘utf8’,$f_recog);

下記追加

デコード 外部入力(CSVファイルから取り出した値で関数等で用いるもの)はデコードして内部文字に変換する

    $num=Encode::decode('utf8',$num); 
    $branch=Encode::decode('utf8',$branch);
    $name1=Encode::decode('utf8',$name1); 
    $name2=Encode::decode('utf8',$name2);  
    $name3=Encode::decode('utf8',$name3);
    $name4=Encode::decode('utf8',$name4);
    $zip=Encode::decode('utf8',$zip);
    $add1=Encode::decode('utf8',$add1);
    $add2=Encode::decode('utf8',$add2);
    $tel=Encode::decode('utf8',$tel);
    $fax=Encode::decode('utf8',$fax);
    $date=Encode::decode('utf8',$date);
    $recog=Encode::decode('utf8',$recog); 
    $city=Encode::decode('utf8',$city);

上記により Wide character in print という警告がでなくなった