PHP:
function toArray( \SplFileObject $input ){
$content = '';
while( !$input->eof() ){
$content .= $input->fread();
}
$converted = substr(
iconv('UTF-16LE', 'UTF-8', $content),
3
);
$memory = new \SplFileObject('php://memory');
$tmp = $memory->openFile('rw');
$tmp->fwrite( $converted );
$tmp->fseek(0);
$data = function() use ($tmp){
while (!$tmp->eof()) {
yield $tmp->fgetcsv("\t");
}
};
return $data();
}
function fromArray( $input, \SplFileObject $datei ){
$memory = new \SplFileObject('php://memory');
$tmp = $memory->openFile('rw');
$tmp->fwrite(chr(0xEF).chr(0xBB).chr(0xBF));
foreach ($input as $row){
$tmp->fputcsv($row, "\t");
}
$tmp->fseek(0);
$content = '';
while(!$tmp->eof()){
$content .= $tmp->fread();
}
$datei->openFile('w');
$datei->fwrite( iconv('UTF-8', 'UTF-16LE', $content) );
return $tmp;
}
fromArray($array, new \SplFileObject('php://output'));
toArray( new \SplFileObject('php://input') );
Последнее редактирование: