本文整理汇总了PHP中League\Csv\Reader::fetchOne方法的典型用法代码示例。如果您正苦于以下问题:PHP Reader::fetchOne方法的具体用法?PHP Reader::fetchOne怎么用?PHP Reader::fetchOne使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类League\Csv\Reader
的用法示例。
在下文中一共展示了Reader::fetchOne方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: parseCsvFile
/**
* Parses a csv file into a DataTable.
*
* Pass in a filepath to a csv file and an array of column types:
* ['date', 'number', 'number', 'number'] for example and a DataTable
* will be built.
*
* @access public
* @since 1.0.0
* @param string $filepath Path location to a csv file
* @param array $columnTypes Array of column types to apply to the csv values
* @throws \Khill\Lavacharts\Exceptions\InvalidFunctionParam
* @return \Khill\Lavacharts\DataTable
*/
public function parseCsvFile($filepath, $columnTypes = null)
{
if (Utils::nonEmptyString($filepath) === false) {
throw new InvalidFunctionParam($filepath, __FUNCTION__, 'string');
}
$this->addNewColumns($columnTypes);
$this->setReader(Reader::createFromPath($filepath));
$this->reader->setFlags(\SplFileObject::READ_AHEAD | \SplFileObject::SKIP_EMPTY);
$csvColumns = $this->reader->fetchOne();
foreach ($this->newColumns as $index => $column) {
if (in_array($column, $this->columnTypes, true) === false) {
throw new InvalidColumnType($column, Utils::arrayToPipedString($this->columnTypes));
}
$this->addColumnFromStrings($columnTypes[$index], $csvColumns[$index]);
}
$csvRows = $this->reader->setOffset(1)->fetchAll(function ($row) {
return array_map(function ($cell) {
if (is_numeric($cell)) {
return $cell + 0;
} else {
return $cell;
}
}, $row);
});
return $this->addRows($csvRows);
}
示例2: setDefaultsFromFile
/**
* Set the metadata from a file.
*
* @param string $file
*/
public function setDefaultsFromFile($file)
{
$file = new Reader($file);
// Fetch columns
$rows = $file->fetchOne();
$file->setOffset(1);
// Fetch entries and set defaults
$entries = $file->fetchAssoc($rows);
foreach ($entries as $entry) {
if (strpos(URL::current(), $entry['url']) !== false) {
$this->defaults = $entry;
}
}
}