• 締切済み

PHPでSQLiteのデータをCSVに出力するときの0埋めについて

phpでSQLiteに格納させたデータをCSVに出力しています。 とある項目のデータの型は“CHAR”にしているのですが、 CSVに出力すると、 “0888” ⇒ “888”という風に頭の0がカットされてしまいます。 0埋めするためにはどのようにしたらいいでしょうか、 恐れ入りますが、どうか教えてください。

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

テスト環境がないのでなんとも言えませんが、 sprintfとかで処理してはどうですか? $num=888; print sprintf("%04d",$num);

flanc8
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • csvファイルのデータをSQLiteに入力したい

    PHP初心者です。 題のとおり、csvファイルのデータを、サーバー上にあるSQLiteのデータベースのテーブル内に入力したいのですが、PHPでのコードはどのようにすれば良いのでしょうか? ローカルのパソコンでSQLiteテーブルに変換してからアップロードしてもOKかと思い、tksqliteというソフトも試してみましたが、使い方がさっぱり分からず上手くいきませんでした。 どなたかお助けくださいませ。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • PHPの記述でSQLiteのテーブルにCSV読み

    PHPの記述で、SQLiteのテーブルにCSVをインポートする記述をご存じでしたら教えてください。 CSVは数値,文字,文字,文字という形式です。 CSVからデータを取得はできますが、テーブルに流すところが不明です。

    • ベストアンサー
    • PHP
  • SQLiteにイメージデータを格納、表示、SQLiteのデータセットアップ

    PHP5でSQLiteにイメージデータを格納、表示、SQLiteのデータセットアップのそれぞれのサンプルを教えてください。 画像掲示板のデータをすべてSQLiteで管理、選択していきたいです。

    • 締切済み
    • PHP
  • 外部のCSVファイルをPHPで読み込み、出力させたい

    下記の質問を参考に外部のCSVファイルをPHPで読み込み、出力させるphpを書きました。 http://oshiete1.goo.ne.jp/qa1615206.html data.csvは "データ01" "データ02" "データ03" ・・・ といったように100行書いてあります。 <1ページ目に記述したphp> <?php $fp = fopen("data.csv", "r"); $repeat = 10; $count = 1; while ($data = fgetcsv($fp, 10000)) { if ($count > $repeat) { break; } print <<<EOD $data[0] EOD; $count++ ; } fclose ($fp) ?> 2ページ目には11行目からのデータを出力したいと思い、 $data[0]の部分を$data[11]に変えたり、 $repeat = 20; $count = 11;にしたりしたのですが、 両方ともうまくいきませんでした。 2ページ目にcsvの11行目からのデータを出力するにはどうすればいいのでしょうか? 私がしたいことは、1ページ目にcsvの1~10行目を、2ページ目にcsvの11~20行目を出力したいとおもっております。 上記のphp以外の記述でも構いませんので、どなたかお分かりになる方がいらっしゃいましたら是非教えて下さい。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • CSV出力に関する考え方

    先日よりPHPでのデータ加工方法を質問していますが、 CSV出力に関してどう考えたらいいのかがわかりません。 というのは、CSV出力したい場合に、 1.データをSQLで取り出したものを出力 2.データをSQLで取り出し、PHPで加工(画面イメージと同じようなもの)を出力 のどちらなのかについてです。 後者を行うための方法があればいいのですが、 前者だと1SQLでやりたい事を実現しなければならないのかと思い悩んでいます。 初心者な質問で申し訳ありませんがコメントお願いします。

    • ベストアンサー
    • PHP
  • PHP CSV 出力

    失礼します。 現在PHPで指定したパスに置いてあるCSVを出力したいのですが、 CSVは出力できているのですが、HTMLが先頭に入ってしまいます。 htmlファイルに設置したボタンに対して phpファイルで処理をしています。 どこかおかしい部分があればご教授頂きたいです。 HTMLファイル <?php $self = $_SERVER["SCRIPT_NAME"]; ?> <form method='POST' action='<?php $self ?>'> <input type='submit' value='CSV出力' name='get_csv'> </form> PHPファイル function This_Month(){ $filepath = 'hoge.csv'; //ダウンロードしたいファイルパス $filename = 'test.csv'; //ダウンロードした際のファイル名 if(!file_exists($filepath)){ die("Error:File(".$filepath.") does not exist"); } //オープンできるか確認 if(!($fp = fopen($filepath,"r"))) { die("Error:Cannot open the file(".$filepath.")"); } fclose($fp); //ファイルサイズの確認 if(($content_length = filesize($filepath)) == 0){ die("Error:File size is 0.(".$filepath.")"); } //ファイルの処理方法 header('Content-Disposition: attachement; filename="'.$filename.'"'); //ファイルタイプ指定 header('Content-Type: application/octet-stream'); header('Content-Transfer-Encoding:binary'); //ファイルサイズ header('Content-Length: '.filesize($filepath)); mb_convert_encoding($filepath,'utf-8','shift-jis'); readfile($filepath); exit(); } //ボタンに合わせて条件を変えていく if(isset($_POST["get_csv"])){ //ユーザーから来たデータをエスケープする $csv_output = htmlspecialchars($_POST["get_csv"], ENT_QUOTES, "UTF-8"); switch ($csv_output) { case "CSV出力": ”This_Month();  break; default: echo "エラー"; exit; } }

    • ベストアンサー
    • PHP
  • vbからのCSV出力について

    VB6.0について質問です。 CSV出力でデータ数がエクセルの限界を超えそうなので 統計ソフトのSPSSというソフトを使おうと思うのですが VBからSPSSへの連携はできるのでしゅうか? 現在、データをカンマ区切りで変数に格納し拡張子をCSVにして出力すると 自動的にCSVファイルが作成されますが SPSSでCSV出力させるにはどうやればよいですか? 当方SPSSは触ったことがないのでお知恵をお貸しください++

  • sqlite3でcsvのインポートができない

    macでsqlite3でcsvのインポートができません。 in.txt -------- 1,りんご,赤色 2,みかん,黄色 ターミナル上で sqlite> .separator , sqlite> .import in.txt tbl1 といった具合にやると、改行が認識されないのか、 expected 2 columns of data but found 4 といったエラーがでます。 対処法を教えてください(><)

  • 全項目がCSV出力されない(LAMP環境)

    LAMP環境で設定している項目の全てをCSV出力できません。 MYSQLのデータとしては存在しています。 具体的には「mantis」というバグトラッキングシステムでの現象です。 csv_export.php・csv_api.php というファイルはあるのですが、 どこをどのように変更すればよいのか、これらのファイルは関係ないのか すら分かりません。何から調べればいいかから教えていただければと思います。宜しくお願いします。

    • 締切済み
    • PHP
  • PHPで、CSVファイルを、指定した行数だけ出力するには?

    同じようなトピックは、いくつかありましたが、あと一歩、わからないので質問させてください。 CSVファイルをPHPを使って読み込み、出力させる場合で、 CSVファイル data.csv --------------------------- データ1,説明,詳細 データ2,説明,詳細 データ3,説明,詳細 データ4,説明,詳細 データ5,説明,詳細   … データ100,説明,詳細 --------------------------- 上記のように100行あったとします。 この時、 PHPファイルを、 --------------------------- <?php $fp = fopen("data.csv", "r"); while ($data = fgetcsv($fp, 10000)) { $num = count ($data); print <<<EOD $data[0]・$data[1]・$data[2]<br> EOD; } fclose ($fp) ?> --------------------------- と書くと、100行目まで普通に出力してしまいます。 もし、10行目までを出したい場合は、どう記述すればよいのでしょうか? 上記のPHPソースに少し書き加える形で解決できればと思うのですが・・・ 色々試しましたが、私の力だけでは無理でした。

    • ベストアンサー
    • PHP
このQ&Aのポイント
  • 印刷時にプリンターを認識しないトラブルが発生しています。
  • ドライバーやNewSoft Labelerを再インストールしても解決しない状況です。
  • パソコンのOSはWindows11で、無線LAN経由で接続されています。関連ソフトはNewSoft CD Labelerを使用しています。電話回線はアナログ回線です。
回答を見る