詹姆斯戈多/php-csv-parser

使用PHP解析CSV文件最简单、最方便的方法。

1.0.6 2024-09-04 12:12 UTC

This package is auto-updated.

Last update: 2024-09-04 12:26:19 UTC


README

Build Status codecov stability-stable

轻松将CSV文件转换为可读和可访问的数据对象。这个库封装了PHP内置的fgetcsv函数,为您提供无烦恼的CSV文件解析。

您的CSV文件中的每一行都会动态地转换为数据对象,键直接从您的CSV文件的第一行设置。

PHP版本支持

该库经过测试,可以与PHP版本 >=5.3 一起工作。

如何使用

在您的终端中运行以下命令

composer require jamesgordo/php-csv-parser

或者简单地将其添加到您的composer.json

{
  "require": {
    "jamesgordo/php-csv-parser": "1.0.0"
  }
}

然后运行

composer update

创建一个示例CSV文件users.csv

id,first_name,last_name
1,John,Doe
2,Eric,Smith
3,Mark,Cooper

示例实现

<?php
// load vendor autoload
require_once __DIR__ . '/vendor/autoload.php';

use JamesGordo\CSV\Parser;

// Initalize the Parser
$users = new Parser('/path/to/users.csv');

// loop through each user and echo the details
foreach($users->all() as $user) {
	echo "User Details: {$user->id} | {$user->first_name} {$user->last_name}";
}

echo "Total Parsed: " . $users->count() . " Users";

选项

您可以设置第二个作为分隔符。默认分隔符是逗号","。

<?php
// load vendor autoload
require_once __DIR__ . '/vendor/autoload.php';

use JamesGordo\CSV\Parser;

// Initalize the Parser with custom delimiter
$users = new Parser('/path/to/users.csv', "|");

您可以在这里查看可接受的分隔符

以下是您最可能使用的公共方法列表。

	$users = new Parser('/path/to/users.csv')	// Initializes the Parser
	$users->setCsv('/path/to/file.csv');		// Sets the File to be Parsed
	$users->getCsv();				// Returns the File to be Parsed
	$users->checkFile('/path/to/file.csv');		// Validates if File is a valid CSV File
	$users->parse();				// Triggers the Parsing of CSV file
	$users->all();					// Returns array of Data Objects parsed from the CSV file
	$users->count();				// Returns the total rows parsed from the CSV file

版本

1.0.6

许可证

MIT许可证

版权所有 (c) 2024 詹姆斯·戈多

特此授予任何人免费获取本软件及其相关文档文件(以下简称“软件”)的副本的权利,以便在不受任何限制的情况下处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许向提供软件的个人授予这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,无论是明示的还是隐含的,包括但不限于适销性、适用于特定目的和无侵权性的保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他方式,无论该索赔、损害或其他责任是否源于、与软件有关,或与使用或以其他方式处理软件有关,或与软件的使用或以其他方式处理软件有关。