問題タブ [fgetcsv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Yii - csv をアップロードしてデータベースに保存する方法は?
アップロードした CSV ファイルを読み取る方法がわかりません。おそらく、コントローラー コードに何かが欠けています。
これは、CSV の最後の行を保存するだけです...助けてください!
どんな助けでも本当に感謝します。
ありがとうございました
php - ヘッダーに従ってcsvデータをmysqlに挿入します
csvファイルをアップロードするための簡単なスクリプトがあり、それは機能します。しかし、ヘッダーが指定されたデータを処理したい場合はどうすればよいですか?たとえば、テーブルにFirstName、LastName、Addressの3つの列があり、csvファイルは次のようになります。
テーブルの列名と同じように配置されていなくても、ヘッダーに従ってデータをmysqlに正しく挿入するにはどうすればよいですか?
スクリプトを使用すると、myadd、myfname、mylnameがFirstName、LastName、Addressに挿入され、ヘッダーも挿入されます。
}
php - fgetcsvの結果は、ローカルとサーバーの実行で異なりますか?
fgetcsv()
csvファイルからいくつかのデータを抽出していました。コードは次のとおりです。
これは私のローカルマシンでは完全に機能しますが、サーバーにアップロードすると惨事になります! に渡し$delimiter
まし","
たfgetcsv()
が、何も変わりませんでした!
どうしたの?
PHP バージョン:
ローカル: 5.3.5
サーバー: 5.2.17
[編集]
私のローカル出力は次のようになります:
しかし、サーバー上では:
php - fGetCsvは最初の行だけを読んでいますか?
fgetCsv を使用しようとしていますが、何らかの理由で最初の行しか読み取っていません。コードは次のとおりです。
これは1行だけ出力します。CSV ファイルは次のとおりです。
なぜこれが起こっているのでしょうか?
php - この CSV が fgetcsv で解析されないのはなぜですか?
整形式の CSV ファイルを解析できません。エンコーディングと関係があるのでしょうか?これはソースです:
エンコーディングで何かをしなければならないと思います。出力は: ‹{¿{?×(ÄN¾R"0;
これは実行中のバージョンです: CSV の問題
php - phpで2つのcsv/tab区切りを1つのcsvに結合するには?
私は2つのファイルを持っています。1つはタブ区切りで、もう1つはコンマ区切りのcsvで、両方がアップロードされ、それらをソートされた1つのcsvに結合する必要があります...これまでの私のコードは次のとおりです
テスト配列には両方の完全な配列がありますが、最初にいくつかの問題が発生しています $test 配列は次のようになります
すべてを含む新しい csv を作成するにはどうすればよいですか?イベント名で並べ替える必要がありますが、テスト配列のこの形式は正しくないようです..何が間違っているのか考えてみてください...
php - PHP fgetcsv()ここで、ソースファイルにはエンクロージャー文字がありませんか?
「列」が何も囲まれていない入力CSVがあります。
ファイルの内容($ input = fopen(filename);):
値の周りにエンクロージャがないため、fgetcsv()を機能させるのに問題があります。
結果:
私は頭のてっぺんから考えることができるいくつかの基本的なことを試しました:
回避策のアイデアはありますか?入力ファイルは数百万行あるため、手動で編集することは実際にはオプションではありません。
php - fgetcsv() を使用して csv (引用符で囲まれたデータ) を正しく解析できない
データが次のような形式で指定されている csv ファイルを解析しようとしています。
ここで、以下のような fgetcsv() を指定すると:
次のように配列を返します:
しかし今、次のようなifステートメントを与えると:
何もエコーしていません。なぜ条件が満たされていないのですか? 囲み引用符と関係がありますか?
私は引用符をエスケープしようとさえしました。
しかし、役に立たない。
このために .ini 設定を変更する必要がありますか? 私を助けてください。
編集: var_dump を実行してみましたが、引用符を含む値が表示されました:
それでも
うまくいきませんでした。正しいコンパレータは何ですか?
更新: 目的のない試行錯誤の数時間後、最終的に厄介な問題が見つかりましたが、問題は解決しました。
最初に、csv ファイルを開こうとしたときに、コンテンツとしてÿþD""を含むメモ帳が開きました。私がしたことは、filecontent 全体をコピーし、同じ名前の新しい csv ファイルを作成したことです。驚いたことに、それは機能しました。
古いファイルは MS-EXCEL/NOTEPAD では問題なく開くことができましたが、Excel では各行が 1 つのセル内に表示されていました。
私の質問は、.csv fromat の問題は何でしたか? 誰もそのような問題に遭遇したことがありますか?
php - filegetcsv が無限ループを引き起こす
PHP関数定義ページfilegetcsv
を含む、インターネット全体で見つかった次のコードを使用して、CSVファイルを解析し、それを処理しようとしています:
$data =
しかし、このコードでは、次の行で警告の無限ループが発生します。
- ファイル名にダミー文字を追加すると、別のエラーが発生し、ループが発生しないため、開いているファイルが有効なファイルであることはわかっています。
- ファイルは、完全なアクセス許可を持つフォルダーにあります。
- Mac 上の Excel で生成された CSV を使用していません (風変わりなエラーがあります) 。
- PHPのバージョンは5.1.6なので機能的には問題ないはずです
ファイルが大きすぎたり、形式が正しくないことはわかっています。元のファイルを縮小し続けて問題があるかどうかを確認し、最終的にメモ帳で次のような 2 行しかないカスタム ファイルを作成したからです。
値 1A、値 1B、値 1C、値 1D
まだループしており、データがありません。これが私が現在取り組んでいる完全なコードです(実際にサーバーに無限ループを与えずに無限ループすることを証明できるように、行数よりも大きい変数を使用しています)
だから私は本当に2つの質問があります。
1) このループの原因となっているのは、何を見落としている可能性がありますか? 私はそれが本当に「顔と手のひら」のような単純なものだと半分確信しています...
2) この関数の推奨コードが、ファイルが存在するが未知の問題がある場合に無限ループを引き起こす可能性があるのはなぜですか? !== FALSE
などの目的は、そのようなことを防ぐことだと思っていたでしょう。
php - PHPでCSVファイルの行を逆順に印刷する
だから私はグーグルで検索し、さまざまなPHP機能を試してみましたが、これまでのところ必要なものを達成していません. 基本的に、死亡したプレイヤーのログと死亡した日時を含む .CSV ファイルがあります。私が望むのは、phpがファイルの最後の行からファイルを読み取り、先頭まで逆方向に進むことです。私が現在持っているコードは次のとおりです。