问题标签 [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 - 在 PHP 中上传文件时如何获取完整的文件路径?
我真的很想知道当我在 PHP 中上传文件时如何获得完整的文件路径?
这是我的问题...
我在 PHP 中导入一个 csv 文件。上传文件不是问题,但用于导入 csv 文件的函数 fgetcsv() 需要 fopen。fopen 是一个让我头疼的问题,因为它需要一个确切的文件路径,这意味着该文件应该与 php 文件位于同一目录中。如果用户从不同的目录获取文件怎么办。
这是我的代码:
index.php
:
csv_import.php
:
fopen 这里只能获取变量传递的文件名$_FILES['csv_file']['name']
。我试图获取任何功能以在互联网上获取 $_FILES 的完整文件路径,但找不到任何功能。
我对网络开发非常陌生,所以请耐心等待。请尽可能简单地回答...请帮助...
php - 将csv文件数据插入数组(PHP)
我正在尝试将上传文件中的数据插入一维数组。
该文件是这样的,一行有一个学生编号,如下所示:
392232、392231等
_
这是我在网上找到的最常见的方法:
但是,按照我的理解,这将为$line
每一行创建一个数组()。这不是我想要的。
除此之外,我尝试了这个以查看它是否正常工作,并且我的代码在使用 ftgetcsv() 后没有打印出数组。文件上传成功。
这是我的代码:
首先,任何人都可以清楚地看到为什么至少将它们打印为单独的数据数组(每一行)是行不通的。
其次,是否可以设置它以便创建文件中所有行的一维数组?
非常感谢,
php - 如何使用 PHP 的 fgetcsv 从 CSV 文件中消除重复项?
我正在使用 fgetcsv 解析 CSV 文件,特别是使用 $line_of_text。我想回声所有拥有共同国家的城市,但我想消除城市重复,例如,如果巴黎发生 200 次,它只会回声一次,而法国其他不同城市的回声则不管他们的实例数量。
我的预感是我需要将城市值存储在一个数组中,然后使用 array_unique 删除重复项,但不幸的是,这超出了我目前的 php 能力。任何帮助深表感谢,我已经尽我所能尝试了一切!
php - fgetcsv( ) 和 Unicode 的问题
我有一个代码。在本地主机上,我读取 csv 文件(带有 Unicode 字符)没有问题。但是当在主机输出上上传代码时什么都没有。为什么?什么是解决方案?
php - 如何从 php 中的 CSV 转储中提取结构化数据
我正在尝试在 PHP 中加载 CSV。
我有一个 CSV 文件,有 3 列,简单的值。
我设法能够遍历每一行并输出每个值,但我需要根据唯一值和行中的某个位置有条件地获取数据。
例如,对于 a 列中的每个唯一值,我需要根据 b 列的值生成一个数据对象数组,使用 c 列作为其中一个值的条件。
我的 CSV:
我用来询问的代码:
输出
我想要实现的伪代码
编辑解决方案:
希望这是有道理的。
谢谢
php - 我需要 PHP 帮助将 CSV 文件打开到数组中,更改数据,然后用更改后的数据覆盖原始 CSV 文件
我需要从 CSV 文件中提取数据以用于报告。但是,导出软件无法将其导出为有用的格式。使用 PHP,我想获取一个包含以下数据的 CSV 文件:
并把它变成这样:
目前,我有使用 fgetcsv() 打开 CSV 文件并删除不需要的字符的代码:
这会将 CSV 文件的行存储到逗号分隔的行中,这使得 $lines 数组看起来像:
现在我需要做的是以正确的顺序将数据存储在一个或多个数组中,以便能够将其导出回 CSV 文件。
我尝试使用:
然后使用 case 语句将正确的数据放入数组中,但它挂断了,所以我一定做错了什么。(更不用说这段代码没有优化。)
关于我可以从这里去哪里的任何想法?谢谢!
php - updating a mysql table with a large csv file in PHP
I have a CSV file which has approximately 13000 lines to be updated into a mysql database. My PHP function stops after about 5000 lines with a timeout or memory overflow.
It loops every line with fgetcsv and checks if the line exists already, which is causing the timeout i guess (SELECT/INSERT/UPDATE queries).
I can't drop the table and re-insert everything because the table still has relations with other tables. -> Then i could write a single INSERT statement with multiple value strings in blocks of e.g. 5000 lines.
I need to find a way to read the file in chunks to prevent a timeout.
Thx in advance!
Some code:
Within another function i call readFile() and loop the lines like this:
php - 如何使用带条件的 PHP 将 csv 文件解析为 mysql DB
您如何使用 php 将 csv 文件解析为 mysql 数据库,从我从 php 文档中读取的位中,我不确定如何或是否可以将条件添加到您正在读入数据库的行中,以便只有满足的值条件被传递到数据库中。
例如,我目前有一个看起来像这样的 csv 文件
逗号之前的代码应该只是十六进制值,我想做的是排除任何不代表十六进制代码(0-9)-(AF)的行(所以十六进制值及其代码)......关于如何完成的任何想法?
php - 读取 CSV,但创建包含行的单个数组,而不是多维数组?
我有一个 CSV 文件,使用 fgetcsv 我可以愉快地将每一行生成为一个数组。
管道表示结构和细胞分裂,下面的逗号是输入的一部分,需要保留。
鉴于图中将在数据中使用逗号,最好使用管道分隔。
php - PHP解析.dat文件
我有一个 .dat 文件,它本质上是;分隔文件,我正在尝试将其转换为制表符分隔的 .txt。我不确定的问题是新文件的每一行将是原始文件的 3 行的组合,每个原始行都有不同数量的数据。第一列仅标识分组中的每一行。最好的方法是什么?
样本原始数据:
结束输出:
有任何想法吗?