#Changelog
All Notable changes to League\Csv
will be documented in this file
AbstractCSV::setOutputBOM
AbstractCSV::getOutputBOM
AbstractCSV::getInputBOM
to manage BOM character with CSV.
Writer::setNewline
,Writer::getNewline
to control the newline sequence character added at the end of each CSV row.
Reader::fetchAssoc
now also accepts an integer as first argument representing a row index.
- Bug Fixed
detectDelimiterList
- Stream Filter API in
League\Csv\AbstractCsv
- named constructors
createFromPath
andcreateFromFileObject
inLeague\Csv\AbstractCsv
to ease CSV object instantiation detectDelimiterList
inLeague\Csv\AbstractCsv
to replace and remove the use ofRuntimeException
indetectDelimiter
setEncodingFrom
andsetDecodingFrom
inLeague\Csv\AbstractCsv
to replacesetEncoding
andgetEncoding
for naming consistencynewWriter
andnewReader
methods inLeague\Csv\AbstractCsv
to replaceLeague\Csv\Writer::getReader
andLeague\Csv\Reader::getWriter
- Nothing
League\Csv\Reader::each
more strict$callable
MUST returns true
League\Csv\AbstractCsv::detectDelimiter
League\Csv\AbstractCsv::setEncoding
andLeague\Csv\AbstractCsv::getEncoding
League\Csv\Reader::setSortBy
League\Csv\Reader::setFilter
League\Csv\Reader::getWriter
League\Csv\Writer::getReader
- Nothing
League\Csv\Writer::setColumnsCount
,League\Csv\Writer::getColumnsCount
,League\Csv\Writer::autodetectColumnsCount
to enable column consistency in writer mode- League\Csv\Reader::fetchColumn replaces
League\Csv\Reader::fetchCol
for naming consistency
League\Csv\Reader::fetchCol
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
$open_mode
default tor+
inLeague\Csv\AbstractCsv
constructors
- Nothing
- Nothing
League\Csv\Writer::setNullHandlingMode
andLeague\Csv\Writer::getNullHandlingMode
to handlenull
value
- Nothing
setting ini_set("auto_detect_line_endings", true);
no longer needed for Mac OS
- Nothing
- Nothing
League\Csv\Reader::addSortBy
,League\Csv\Reader::removeSortBy
,League\Csv\Reader::hasSortBy
,League\Csv\Reader::clearSortBy
to improve sortingLeague\Csv\Reader::clearFilter
to align extract filter capabilities to sorting capabilities
League\Csv\Reader::setSortBy
replaced by a better implementation
League\Csv\Reader::setOffset
now default to 0;League\Csv\Reader::setLimit
now default to 0-1;detectDelimiter
bug fixes
- Nothing
- Nothing
League\Csv\Reader::each
to ease CSV import dataLeague\Csv\Reader::addFilter
,League\Csv\Reader::removeFilter
,League\Csv\Reader::hasFilter
to improve extract filter capabilitiesdetectDelimiter
method toLeague\Csv\AbstractCsv
to sniff CSV delimiter character.
League\Csv\Reader::setFilter
replaced by a better implementation
- Nothing
- Nothing
- Nothing
- Change namespace from
Bakame\Csv
toLeague\Csv
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
$open_mode
validation is done by PHP interals directly
- Nothing
- Nothing
toXML
method to transcode the CSV into a XML inBakame\Csv\AbstractCsv
- Nothing
toHTML
method bug inBakame\Csv\AbstractCsv
output
method accepts an optional$filename
argumentBakame\Csv\Reader::fetchCol
default to$columnIndex = 0
Bakame\Csv\Reader::fetchOne
default to$offset = 0
- Nothing
- Nothing
- Move from
PSR-0
toPSR-4
to autoload the library
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
Bakame\Csv\Reader
methods fixedjsonSerialize
bug fixed
- Nothing
- Nothing
getEncoding
andsetEncoding
methods toBakame\Csv\AbstractCsv
- Nothing
Bakame\Csv\Writer::insertOne
takes into account CSV controlstoHTML
method takes into account encoding
- Nothing
- Nothing
Bakame\Csv\Writer
Bakame\Csv\Writer
andBakame\Csv\Reader
extendBakame\Csv\AbstractCsv
- Nothing
Bakame\Csv\Reader::fetchOne
is no longer deprecatedBakame\Csv\Reader::fetchCol
no longer accepts a third parameter$strict
Bakame\Csv\Codec
now the library is composer of 2 main classesBakame\Csv\Reader::getFile
Bakame\Csv\Reader::fetchValue
Bakame\Csv\Reader
no longer implements theArrayAccess
interface
- Nothing
Bakame\Csv\Reader
implementsIteratorAggregate
InterfaceBakame\Csv\Reader::createFromString
to create a CSV object from a raw stringBakame\Csv\Reader::query
accept an optional$callable
parameter
Bakame\Csv\Reader::getFile
in favor ofBakame\Csv\Reader::getIterator
Bakame\Csv\ReaderInterface
useless interface
Bakame\Csv\Reader::fetch*
$callable
parameter is normalized to accept an arrayBakame\Csv\Reader::fetchCol
accepts a third parameter$strict
- Nothing
Bakame\Csv\Reader
implements the following interfacesJsonSerializable
andArrayAccess
Bakame\Csv\Reader::toHTML
to output the CSV as a HTML tableBakame\Csv\Reader::setFilter
,Bakame\Csv\Reader::setSortBy
,Bakame\Csv\Reader::setOffset
,Bakame\Csv\Reader::setLimit
,Bakame\Csv\Reader::query
to perform SQL like queries on the CSV content.Bakame\Csv\Codec::setFlags
,Bakame\Csv\Codec::getFlags
, Bakame\Csv\Codec::__construct : add an optional$flags
parameter to enable the use ofSplFileObject
constants flags
Bakame\Csv\Reader::fetchOne
replaced byBakame\Csv\Reader::offsetGet
Bakame\Csv\Reader::fetchValue
useless method
- Nothing
- Nothing
- Nothing
Bakame\Csv\Reader::output
output the CSV data directly in the output bufferBakame\Csv\Reader::__toString
can be use to echo the raw CSV
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
- Nothing
Bakame\Csv\Reader::fetchAssoc
when users keys and CSV row data don't have the same length
- Nothing
Bakame\Csv\ReaderInterface
Bakame\Csv\Reader
class
- Nothing
- Nothing
Bakame\Csv\Codec::loadString
returns aBakame\Csv\Reader
objectBakame\Csv\Codec::loadFile
returns aBakame\Csv\Reader
objectBakame\Csv\Codec::save
returns aBakame\Csv\Reader
object
- Nothing
Bakame\Csv\CsvCodec
class renamedBakame\Csv\Codec
- Nothing
Bakame\Csv\Codec::create
from public API
- Nothing
- Nothing
Initial Release of Bakame\Csv