PHP.mk документација

SplFileObject::getCsvControl

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

splfileobject.getcsvcontrol.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека splfileobject.getcsvcontrol.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
SplFileObject::getCsvControl

Референца за `splfileobject.getcsvcontrol.php` со подобрена типографија и навигација.

splfileobject.getcsvcontrol.php

SplFileObject::getCsvControl

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

SplFileObject::getCsvControlЗеми го разделувачот, затворачот и знакот за бегство за CSV

= NULL

public SplFileObject::getCsvControl(): array

Ги зема разделувачот, затворачот и знакот за бегство што се користат за парсирање CSV fields.

Параметри

Оваа функција нема параметри.

Вратени вредности

Враќа индексиран список што ги содржи разделувачот, затворачот и знакот за бегство.

Дневник на промени

Верзија = NULL
7.4.0 Функцијата сега враќа false наместо нула при неуспех.
7.0.10 Додаден е знакот за бегство во вратената низа.

Примери

Пример #1 SplFileObject::setCsvControl() example

<?php
$file
= new SplFileObject("data.txt");
print_r($file->getCsvControl());
?>

Горниот пример ќе прикаже нешто слично на:

Array
(
    [0] => ,
    [1] => "
    [2] => \
)

Види Исто така

Белешки од корисници 3 белешки

greg dot bowler at g105b dot com
пред 11 години
Note that this function does not magically guess the CSV control from a given file, rather it returns what has been priorly set with SplFileObject::setCsvControl().
faure dot daniel dot 57 at gmail dot com
пред 4 години
Given an absolute path to a CSV or any text file and a list of possible delimiters and assuming lines are up to 4096 characters long, I use

<?php 
function guess_delimiter($file, $delimiters=[',',';']) 
{
  $h = fopen($file,'r');
    $count = [];
    foreach ($delimiters as $del) {
      $count[$del] = 0;
      while (($bufer = fgets($h, 4096)) !== false) {
        $count[$del]+=substr_count($bufer, $del);
      }
      rewind($h);
    }
    fclose($h);
    return array_search(max($count), $count);
}
Анонимен
12 години пред
Seems that this function always returns the same delimiter.

<?php
file_put_contents("A;B;C;D\n0;0;0;0", "test.txt");

$file = new SplFileObject("test.txt"); 
var_dump($file->getCsvControl());
?>

array(2) {
  [0]=>
  string(1) ","
  [1]=>
  string(1) """
}
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.