function outputLibraryData($mode, $is_inf_format = false)
 {
     $tel_len = 12;
     $pbno_len = 3;
     if ($is_inf_format) {
         $tel_len = 13;
         $pbno_len = 4;
     }
     $sql = $this->getQuery('GET_LIBRARY_OUTPUT_DATA');
     $aryRet = $this->oDb->getAll($sql);
     $strUser = "";
     if (is_array($aryRet)) {
         foreach ($aryRet as $data) {
             // 固定
             $strUser .= "1601";
             // 職員コード
             $strUser .= str_pad($data['staffcode'], 10);
             // 新旧フラグ固定
             $strUser .= "0";
             // 予備
             $strUser .= str_pad("", 15);
             // 所属部署コード
             $strUser .= str_pad($data['wardcode'], 5);
             // 職種コード
             $strUser .= str_pad($data['professioncode'], 3);
             // パスワード
             $password = $data['password'];
             $password = $this->passwordDecrypt($password);
             if (strlen($password) > 5) {
                 $password = substr($password, 0, 5);
             }
             $strUser .= str_pad($password, 5);
             // 職員カナ名称
             $kananame = str_replace(" ", " ", $data['kananame']);
             $kananame = string::zen2han($kananame);
             $strUser .= string::mb_str_pad($kananame, 20);
             // 職員漢字名称
             $strUser .= string::mb_str_pad($data['kanjiname'], 20, " ");
             // 発行番号
             $strUser .= str_pad("", 4);
             // 給与職員番号
             $strUser .= str_pad("", 4);
             // 所属科コード
             $strUser .= str_pad($data['deptcode'], 2);
             // 役職コード
             $strUser .= str_pad($data['gradecode'], 2);
             // 棒給表コード
             $strUser .= str_pad("", 2);
             // 所属科コード
             $strUser .= str_pad($data['deptcode'], 2);
             // 予約項目コード
             $strUser .= str_pad($data['appcode'], 5);
             // 予備
             $strUser .= str_pad("", 19);
             // ローマ字氏名
             $eijiname = $data['eijiname'];
             if (strlen($eijiname) > 25) {
                 list($sei, $mei) = explode(".", $eijiname);
                 $sei = substr($sei, 0, 1);
                 $eijiname = $sei . "." . $mei;
             }
             $strUser .= str_pad($eijiname, 25);
             // 住所
             $strUser .= string::mb_str_pad("", 60, " ");
             // 備考
             $note = string::han2zen($date['note']);
             $note = string::nr2null($note);
             if (string::strlen($note) > 60) {
                 $note = mb_substr($note, 0, 60, 'UTF-8');
             }
             $strUser .= string::mb_str_pad($note, 60, " ");
             // 電話番号
             $strUser .= str_pad("", $tel_len);
             // 生年月日
             $strUser .= str_pad($data['birthday'], 8);
             // 性別
             $sex = "";
             if ($data['sex'] == "0") {
                 $sex = "M";
             } else {
                 if ($data['sex'] == "1") {
                     $sex = "F";
                 }
             }
             $strUser .= str_pad($sex, 1);
             // 終了区分
             $strUser .= "0";
             // PHS番号
             $pbno_start = 4 - $pbno_len;
             $pbno = substr($data['pbno'], $pbno_start, $pbno_len);
             $strUser .= str_pad($pbno, $pbno_len);
             // 内線
             $strUser .= substr(str_pad($data['naisen'], 4), 0, 4);
             // 有効開始日
             $strUser .= str_pad($data['validstartdate'], 8);
             // 有効終了日
             $strUser .= str_pad($data['validenddate'], 8);
             // 予備
             $strUser .= str_pad("", 10);
             // 更新日
             $strUser .= str_pad($data['send_date'], 8);
             // 更新端末
             $strUser .= str_pad("", 4);
             // 更新者
             $strUser .= str_pad($data['update_staffcode'], 10);
             // 部署名
             $strUser .= string::mb_str_pad($data['wardname'], 40, " ");
             // 所属名
             $strUser .= string::mb_str_pad($data['deptname'], 20, " ");
             // 役職名
             $strUser .= string::mb_str_pad($data['gradename'], 20, " ");
             // 棒給表名
             $strUser .= string::mb_str_pad("", 10, " ");
             // 予備
             $strUser .= str_pad("", 5);
             // 扉許可情報
             $strUser .= "111111111111111111111111111111111111111111111111111111111111";
             $strUser .= "\r\n";
         }
     }
     $file = $mode . microtime(true) . ".txt";
     $file_path = EXPTEMP_PATH . $file;
     file_put_contents($file_path, $strUser);
     return $file;
     /*
     $filename = $title . "用データ_" . date("YmdHis") . ".txt";
     
     $this->strDl($filename, $strUser);
     */
 }
Exemple #2
0
 function aryToCsv($ary)
 {
     $aryRet = "";
     if (is_array($ary) and sizeof($ary) > 0) {
         // 改行を取り除く
         $ary = string::nr2null($ary);
         foreach ($ary as $key => $aryVal) {
             $dev = "";
             foreach ($aryVal as $val) {
                 $aryRet[$key] .= $dev;
                 $aryRet[$key] .= '"' . $val . '"';
                 $dev = ",";
             }
         }
     }
     return $aryRet;
 }
 $strUser .= str_pad($data['appcode'], 5);
 // 予備
 $strUser .= str_pad("", 19);
 // ローマ字氏名
 $eijiname = $data['eijiname'];
 if (strlen($eijiname) > 25) {
     list($sei, $mei) = explode(".", $eijiname);
     $sei = substr($sei, 0, 1);
     $eijiname = $sei . "." . $mei;
 }
 $strUser .= str_pad($eijiname, 25);
 // 住所
 $strUser .= string::mb_str_pad("", 60, " ");
 // 備考
 $note = string::han2zen($date['note']);
 $note = string::nr2null($note);
 if (string::strlen($note) > 60) {
     $note = mb_substr($note, 0, 60, 'UTF-8');
 }
 $strUser .= string::mb_str_pad($note, 60, " ");
 // 電話番号
 $strUser .= str_pad("", 12);
 // 生年月日
 $strUser .= str_pad($data['birthday'], 8);
 // 性別
 $sex = "";
 if ($data['sex'] == "0") {
     $sex = "M";
 } else {
     if ($data['sex'] == "1") {
         $sex = "F";