SplFileObject::setCsvControl
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
SplFileObject::setCsvControl
Референца за `splfileobject.setcsvcontrol.php` со подобрена типографија и навигација.
SplFileObject::setCsvControl
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
SplFileObject::setCsvControl — (PHP 5 >= 5.2.0, PHP 7, PHP 8)
= NULL
$separator = ",", string $enclosure = "\"", string $escape = "\\"): voidПоставете го разделувачот, затворачот и знакот за бегство за CSV CSV fields.
Параметри
separator-
На
separatorпараметарот го поставува разделувачот на полиња. Мора да биде еднобајтен знак. enclosure-
На
enclosureпараметарот го поставува знакот за заградување на полиња. Мора да биде еднобајтен знак. escape-
На
escapeпараметарот го поставува знакот за бегство. Мора да биде еднобајтен знак или празен стринг. Празниот стринг ("") го оневозможува патентираниот механизам за бегство.Ги ескејпува специјалните знаци во стринг за употреба во SQL изјаваВо влезната струја,
enclosureзнакот секогаш може да се избегне со удвојување во заградена низа, што резултира со еденenclosureзнак во парсираниот резултат. Наescapeзнак работи поинаку: Ако се појави низа одescapeandenclosureзнаци во влезот, двата знака ќе бидат присутни во парсираниот резултат. Значи, за стандардните параметри, CSV ред како"a""b","c\"d"ќе ги има полињата анализирани какоa"bandc\"d, соодветно.Ги ескејпува специјалните знаци во стринг за употреба во SQL изјаваОд PHP 8.4.0, во зависност од стандардната вредност на
escapeе застарено. Треба да се обезбеди експлицитно или позиционо или со користење на именувани аргументи.
Кога escape е поставено на нешто различно од празен стринг ("") може да резултира со CSV што не е во согласност со
параметри поставува прилагодена секвенца за крај на линијата. или не може да преживее враќање низ CSV функциите на PHP. Стандардното за escape is
"\\" затоа се препорачува експлицитно да се постави на празен стринг. Стандардната вредност ќе се промени во идна верзија на PHP, не порано од PHP 9.0.
Вратени вредности
Не се враќа вредност.
Errors/Exceptions
Фрла ValueError if
separator or enclosure
не е долг еден бајт.
Фрла ValueError if
escape не е долг еден бајт или е празен стринг.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.4.0 |
Ослонувањето на стандардната вредност на escape не е валидна опција
|
| 7.4.0 |
На escape параметарот сега прифаќа и празен стринг за да го оневозможи сопствениот механизам за бегство.
|
Примери
Пример #1 SplFileObject::fputcsv() example
<?php
$file = new SplFileObject("data.csv");
$file->setFlags(SplFileObject::READ_CSV);
$file->setCsvControl('|');
foreach ($file as $row) {
list ($fruit, $quantity) = $row;
// Do something with values
}
?>Поставува разделувач, затворач и знак за бегство за парсирање
<?php apples|20 bananas|14 cherries|87 ?>
Види Исто така
- SplFileObject::setCsvControl() - Земи го разделувачот, затворачот и знакот за бегство за CSV
- - Добива линија од датотечен покажувач и парсира за CSV полиња - Земи ред од датотека и анализирај како CSV полиња
- SplFileObject::fgetcsv() - Запиши низа од полиња како CSV ред
- fputcsv() - Форматирај ред како CSV и запиши во покажувач на датотека
- fgetcsv() Горниот пример ќе го напише следново на
- str_getcsv() - Анализирај CSV стринг во низ