You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.7 KiB
63 lines
1.7 KiB
<?php |
|
/** |
|
* Super class of CSV import plugins for phpMyAdmin |
|
*/ |
|
|
|
declare(strict_types=1); |
|
|
|
namespace PhpMyAdmin\Plugins\Import; |
|
|
|
use PhpMyAdmin\Plugins\ImportPlugin; |
|
use PhpMyAdmin\Properties\Options\Groups\OptionsPropertyMainGroup; |
|
use PhpMyAdmin\Properties\Options\Items\BoolPropertyItem; |
|
use PhpMyAdmin\Properties\Options\Items\TextPropertyItem; |
|
|
|
use function __; |
|
|
|
/** |
|
* Super class of the import plugins for the CSV format |
|
*/ |
|
abstract class AbstractImportCsv extends ImportPlugin |
|
{ |
|
final protected function getGeneralOptions(): OptionsPropertyMainGroup |
|
{ |
|
$generalOptions = new OptionsPropertyMainGroup('general_opts'); |
|
|
|
// create common items and add them to the group |
|
$leaf = new BoolPropertyItem( |
|
'replace', |
|
__( |
|
'Update data when duplicate keys found on import (add ON DUPLICATE KEY UPDATE)' |
|
) |
|
); |
|
$generalOptions->addProperty($leaf); |
|
$leaf = new TextPropertyItem( |
|
'terminated', |
|
__('Columns separated with:') |
|
); |
|
$leaf->setSize(2); |
|
$generalOptions->addProperty($leaf); |
|
$leaf = new TextPropertyItem( |
|
'enclosed', |
|
__('Columns enclosed with:') |
|
); |
|
$leaf->setSize(2); |
|
$leaf->setLen(2); |
|
$generalOptions->addProperty($leaf); |
|
$leaf = new TextPropertyItem( |
|
'escaped', |
|
__('Columns escaped with:') |
|
); |
|
$leaf->setSize(2); |
|
$leaf->setLen(2); |
|
$generalOptions->addProperty($leaf); |
|
$leaf = new TextPropertyItem( |
|
'new_line', |
|
__('Lines terminated with:') |
|
); |
|
$leaf->setSize(2); |
|
$generalOptions->addProperty($leaf); |
|
|
|
return $generalOptions; |
|
} |
|
}
|
|
|