Класс ExtractTask
Экстрактор строк языка
- Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait, Cake\Log\LogTrait, Cake\Utility\MergeVariablesTrait, Cake\Datasource\ModelAwareTrait
-
Cake\Shell\Task\ExtractTask
Подробное описание методов
_addTranslationsource protected
_addTranslation( string $domain , string $msgid , array $details [] )
Добавить перевод в свойство внутренних переводов
Обрабатывает дубликаты переводов
Параметры
- строка
$domain - Домен
- строка
$msgid - Строка сообщения
- массив
$detailsнеобязательно [] - Контекст и форма множественного числа (если есть), ссылки на файл и строку
_buildFilessource protected
_buildFiles( )
Создать содержимое шаблона файла перевода из полученных строк
_extractTokenssource protected
_extractTokens( )
Извлечь токены из всех файлов, которые будут обработаны
_formatStringsource protected
_formatString( string $string )
Отформатировать строку, чтобы добавить её как переводимую строку
Параметры
- строка
$string - Строка для форматирования
Возвращает
stringОтформатированная строка
_getPathssource protected
_getPaths( )
Метод взаимодействия с пользователем и получения выборов путей.
_getStringssource protected
_getStrings( integer $position , integer $target )
Получить строки с текущей позиции
Параметры
- целое число
$position - Фактическая позиция в массиве токенов
- целое число
$target - Количество строк для извлечения
Возвращает
arrayИзвлечённые строки
_isExtractingAppsource protected
_isExtractingApp( )
Возвращает, предназначена ли эта операция для извлечения строк только из каталогов в папке, представленной константой APP, то есть эта задача извлекает строки из того же приложения.
Возвращает
booleanbool
_isPathUsablesource protected
_isPathUsable( string $path )
Проверяет, может ли указанный путь использоваться для записи.
Параметры
- строка
$path - Путь к папке
Возвращает
booleantrue, если он существует и доступен для записи, иначе false
_markerErrorsource protected
_markerError( string $file , integer $line , string $marker , integer $count )
Указать недействительный маркер в обработанном файле
Параметры
- строка
$file - Файл, в котором находится недействительный маркер
- целое число
$line - Номер строки
- строка
$marker - Найденный маркер
- целое число
$count - Счётчик
_parsesource protected
_parse( string $functionName , array $map )
Разбор токенов
Параметры
- строка
$functionName - Имя функции, которое указывает на переводимую строку (например: '__')
- массив
$map - Массив, содержащий переменные, которые будут найдены (например: домен, единственное число, множественное число)
_searchFilessource protected
_searchFiles( )
Поиск файлов, которые могут содержать переводимые строки
_storesource protected
_store( string $domain , string $header , string $sentence )
Подготовить файл для хранения
Параметры
- строка
$domain - Домен
- строка
$header - Содержимое заголовка.
- строка
$sentence - Предложение для хранения.
_welcomesource protected
_welcome( )
Нет сообщения приветствия.
Переопределяет
Cake\Console\Shell::_welcome() _writeHeadersource protected
_writeHeader( )
Создать заголовок шаблона перевода
Возвращает
stringЗаголовок шаблона перевода
getOptionParsersource public
getOptionParser( )
Получить экземпляр парсера опций и настроить его.
Возвращает
Cake\Console\ConsoleOptionParser\Cake\Console\ConsoleOptionParser
Переопределяет
Cake\Console\Shell::getOptionParser() Методы, унаследованные от Cake\Console\Shell
__constructsource public
__construct( Cake\Console\ConsoleIo $io null )
Создаёт этот экземпляр Shell.
Параметры
-
Cake\Console\ConsoleIo$ioнеобязательно null - Экземпляр io.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell__debugInfosource public
__debugInfo( )
Возвращает массив, который может использоваться для описания внутреннего состояния этого объекта.
Возвращает
arrayмассив
__getsource public
__get( string $name )
Перегрузка get для ленивого построения задач
Параметры
- строка
$name - Задача для получения.
Возвращает
Cake\Console\ShellОбъект задачи
_displayHelpsource protected
_displayHelp( string $command )
Отображение справки в правильном формате
Параметры
- строка
$command - Команда, для которой требуется справка.
Возвращаемое значение
integer|booleanint|bool
_setOutputLevelsource protected
_setOutputLevel( )
Установка уровня вывода на основе параметров.
Это перенастраивает уровень вывода для out() и настроенный журнал stdout/stderr.
_stopsource protected
_stop( integer|string $status 0 )
Остановка выполнения текущего сценария. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число или строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
clearsource public
clear( )
Очистка консоли
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#console-outputcreateFilesource public
createFile( string $path , string $contents )
Создаёт файл по заданному пути
Параметры
- строка
$path - Куда поместить файл.
- строка
$contents - Содержание, которое нужно поместить в файл.
Возвращаемое значение
booleanУспешно
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#creating-filesdispatchShellsource public
dispatchShell( )
Отправка команды в другую оболочку. Похоже на Object::requestAction(), но предназначено для запуска оболочек из других оболочек.
Использование:
С текстовой командой:
return $this->dispatchShell('schema create DbAcl');
Избегайте использования этого формата, если у вас есть строковые аргументы со пробелами в них. Отправленная оболочка будет вызвана неправильно. Используйте этот формат только для простого диспетчеризации команд.
С массивом команд:
return $this->dispatchShell('schema', 'create', 'i18n', '--dry');
С массивом, содержащим две пары ключ/значение: - command может принимать как строку, так и массив. Представляет команду для отправки - extra может принимать массив дополнительных параметров для передачи диспетчеру. Эти параметры будут доступны в свойстве param вызванной оболочки Shell
`return $this->dispatchShell([ 'command' => 'schema create DbAcl', 'extra' => ['param' => 'value'] ]);`
или
`return $this->dispatchShell([ 'command' => ['schema', 'create', 'DbAcl'], 'extra' => ['param' => 'value'] ]);`
Возвращаемое значение
mixedРезультат работы другой оболочки.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shellerrsource public
err( string|array|null $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводит только перевод строки.
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество переводов строк для добавления
errorsource public
error( string $title , string|null $message null )
Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1
Параметры
- строка
$title - Заголовок ошибки
- строка|null
$messageнеобязательно null - Необязательное сообщение об ошибке
Возвращаемое значение
integerКод ошибки
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#styling-outputhasMethodsource public
hasMethod( string $name )
Проверить, содержит ли этот командный интерпретатор вызываемый метод с указанным именем.
Параметры
- строка
$name - Имя метода для проверки.
Возвращаемое значение
booleanbool
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshasTasksource public
hasTask( string $task )
Проверить, содержит ли этот командный интерпретатор задачу с указанным именем.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращаемое значение
booleanУспех
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshelpersource public
helper( string $name , array $settings [] )
Отобразить помощника консоли
Создать и отобразить вывод для объекта помощника. Если объект помощника еще не загружен, он будет загружен и создан.
Параметры
- строка
$name - Имя помощника для отображения
- массив
$settingsнеобязательно [] - Данные конфигурации для помощника.
Возвращаемое значение
Cake\Console\HelperСозданный экземпляр помощника.
hrsource public
hr( integer $newlines 0 , integer $width 63 )
Выводит последовательность символов тире в стандартный вывод, служит визуальной разделительной линией.
Параметры
- целое число
$newlinesнеобязательно 0 - Количество новых строк для добавления в начале и конце
- целое число
$widthнеобязательно 63 - Ширина линии, по умолчанию 63
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hrinsource public
in( string $prompt , string|array|null $options null , string|null $default null )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка/массив/null
$optionsнеобязательно null - Массив или строка вариантов.
- строка/null
$defaultнеобязательно null - Значение ввода по умолчанию.
Возвращаемое значение
mixedЛибо значение по умолчанию, либо ввод пользователя.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::ininitializesource public
initialize( )
Инициализирует командный интерпретатор, выступает в качестве конструктора для подклассов, позволяет настроить задачи перед выполнением командного интерпретатора
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initializeiosource public
io( Cake\Console\ConsoleIo $io null )
Получение/установка объекта io для этого командного интерпретатора.
Параметры
-
Cake\Console\ConsoleIo$ioнеобязательно null - Объект ConsoleIo для использования.
Возвращаемое значение
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
loadTaskssource public
loadTasks( )
Загружает задачи, определённые в public $tasks
Возвращаемое значение
booleanbool
nlsource public
nl( integer $multiplier 1 )
Возвращает одну или несколько последовательностей символов новой строки.
Параметры
- integer
$multiplierнеобязательно 1 - Количество раз, которое последовательность символов новой строки должна быть повторена
Возвращаемое значение
stringstring
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nloutsource public
out( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Task\Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только новую строку.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet, присутствующим в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- string|array|null
$messageнеобязательно null - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- integer
$levelнеобязательно Cake\Shell\Task\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращаемое значение
integer|booleanВозвращает количество байтов, возвращённых при записи в стандартный вывод.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outparamsource public
param( string $name )
Безопасно получает значения из $this->params.
Параметры
- string
$name - Имя параметра для получения.
Возвращаемое значение
string|boolean|nullЗначение. Возвращает null, если параметр не существует.
parseDispatchArgumentssource public
parseDispatchArguments( array $args )
Разбирает аргументы для метода dispatchShell().
Параметры
- array
$args - Аргументы, полученные из метода dispatchShell() с помощью func_get_args()
Возвращаемое значение
arrayПервое значение должно быть массивом аргументов команды. Второе значение должно быть массивом дополнительных параметров, передаваемых диспетчеру
quietsource public
quiet( string|array $message , integer $newlines 1 )
Вывод на всех уровнях.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Возвращаемое значение
integer|booleanВозвращает количество байтов, возвращённых при записи в стандартный вывод.
runCommandsource public
runCommand( array $argv , boolean $autoMethod false , array $extra [] )
Выполняет оболочку с предоставленными argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в оболочке.
- Соответствующее имя задачи.
-
main()метод.
Если оболочка реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с исходным именем метода в argv.
Для вызова задач они обязательно должны быть представлены в виде подкоманд. Если вы определили какие-либо подкоманды, вы должны определить все подкоманды, необходимые вашей оболочке, будь то методы этого класса или методы задач.
Параметры
- array
$argv - Массив аргументов для выполнения оболочки. Этот массив должен быть без имени оболочки.
- boolean
$autoMethodнеобязательно false - Установите в значение true, чтобы разрешить вызов любого публичного метода, даже если он не был определен как подкоманда. Это используется ShellDispatcher, чтобы упростить создание простых оболочек.
- array
$extraнеобязательно [] - Дополнительные параметры, которые вы можете вручную передать в оболочку для обработки. Встроенный дополнительный параметр - : -
requested: если используется, предотвращает отображение приветственного сообщения оболочки
Возвращаемое значение
mixedсмешанный тип
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#the-cakephp-consoleshortPathsource public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым
Параметры
- string
$file - Абсолютный путь к файлу
Возвращаемое значение
stringсокращённый путь
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::shortPathstartupsource public
startup( )
Запускает оболочку и отображает приветственное сообщение. Разрешает проверку и настройку до выполнения команды или основного исполнения
Переопределите этот метод, если хотите удалить приветственную информацию или каким-либо образом изменить поток до команды.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::startupverbosesource public
verbose( string|array $message , integer $newlines 1 )
Вывод на уровне verbose.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Возвращаемое значение
integer|booleanВозвращает количество байтов, возвращённых при записи в стандартный вывод.
wrapTextsource public
wrapText( string $text , integer|array $options [] )
Обёртка блока текста. Позволяет установить ширину и отступы блока текста.
Параметры
-
widthШирина обрезки. По умолчанию 72 -
wordWrapОбрезка только по пробелам. По умолчанию true. -
indentОтступ текста с помощью предоставленной строки. По умолчанию null.
Параметры
- string
$text - Текст для форматирования.
- integer|array
$optionsнеобязательно [] - Массив параметров или целое число для обрезки текста.
Возвращаемое значение
stringОтформатированный / отступленный текст
См. также
Cake\Utility\Text::wrap()Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::wrapTextМетоды, используемые из Cake\ORM\Locator\LocatorAwareTrait
tableLocatorsource public
tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator null )
Устанавливает локатор таблицы. Если параметры не переданы, он вернёт текущий локатор.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocatorнеобязательно null - Объект LocatorInterface.
Возвращаемое значение
Cake\ORM\Locator\LocatorInterface\Cake\ORM\Locator\LocatorInterface
Методы, используемые из Cake\Log\LogTrait
logsource public
log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )
Удобный метод для записи сообщения в журнал. Для получения дополнительной информации о записи в журналы обратитесь к Log::write().
Параметры
- mixed
$msg - Сообщение для журнала.
- integer|string
$levelнеобязательно LogLevel::ERROR - Уровень ошибки.
- string|array
$contextнеобязательно [] - Дополнительные данные журнала, относящиеся к этому сообщению.
Возвращаемое значение
booleanРезультат записи в журнал.
Методы, используемые из Cake\Utility\MergeVariablesTrait
_mergePropertysource protected
_mergeProperty( string $property , array $parentClasses , array $options )
Объединение одного свойства со значениями, объявленными во всех родительских классах.
Параметры
- string
$property - Имя объединяемого свойства.
- array
$parentClasses - Массив классов, которые необходимо объединить.
- array
$options - Параметры для объединения свойства, см. _mergeVars().
_mergePropertyDatasource protected
_mergePropertyData( array $current , array $parent , boolean $isAssoc )
Объединение каждого из ключей в свойстве.
Параметры
- array
$current - Текущее объединенное значение.
- array
$parent - Значение родительского класса.
- boolean
$isAssoc - Флаг, указывающий, должно ли объединение происходить в ассоциативном режиме.
Возвращаемое значение
mixedОбновленное значение.
_mergeVarssource protected
_mergeVars( array $properties , array $options [] )
Объединение списка $properties со всеми родительскими классами текущего класса.
Параметры:
-
associative- Список свойств, которые следует обрабатывать как ассоциативные массивы. Свойства в этом списке будут переданы через Hash::normalize() перед объединением.
Параметры
- array
$properties - Массив свойств и стратегии объединения для них.
- array
$optionsнеобязательно [] - Параметры для объединения свойств.
Методы, используемые из Cake\Datasource\ModelAwareTrait
_setModelClasssource protected
_setModelClass( string $name )
Устанавливает свойства modelClass и modelKey на основе соглашений.
Если свойства уже заданы, они не будут перезаписаны.
Параметры
- string
$name - Имя класса.
loadModelsource public
loadModel( string|null $modelClass null , string|null $modelType null )
Загружает и создает объекты репозитория, необходимые для этого объекта.
Обычно используется для загрузки объектов таблиц ORM. Также может использоваться для загрузки других типов объектов репозитория, используемых в вашем приложении.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
- string|null
$modelClassнеобязательно null - Имя класса модели для загрузки. По умолчанию равно $this->modelClass.
- string|null
$modelTypeнеобязательно null - Тип репозитория для загрузки. По умолчанию равно значению modelType().
Возвращаемое значение
objectСозданный экземпляр модели.
Исключения
Cake\Datasource\Exception\MissingModelExceptionЕсли класс модели не найден.
InvalidArgumentExceptionПри использовании типа, который не зарегистрирован.
UnexpectedValueExceptionЕсли тип модели не определен
modelFactorysource public
modelFactory( string $type , callable $factory )
Регистрация вызываемого объекта для создания репозиториев заданного типа.
Параметры
- string
$type - Имя типа репозитория, для которого предназначена функция-фабрика.
- callable
$factory - Функция-фабрика, используемая для создания экземпляров.
modelTypesource public
modelType( string|null $modelType null )
Устанавливает или получает тип модели, используемый этим классом.
Параметры
- string|null
$modelTypeнеобязательно null - Тип модели или null для получения текущего
Возвращаемое значение
string|$this$this
Константы, унаследованные от Cake\Console\Shell
CODE_ERROR, NORMAL, QUIET, VERBOSE |
Сводка свойств
Свойства, унаследованные от Cake\Console\Shell
$OptionParsersource
public Cake\Console\ConsoleOptionParser
Экземпляр ConsoleOptionParser, настроенный для этого класса.
$Taskssource
public Cake\Console\TaskRegistry
Коллекция задач для команды, используемая для создания задач.
$interactivesource
public boolean
Если true, скрипт запросит разрешение на выполнение действий.
true $pluginsource
public string
Имя плагина, к которому принадлежит оболочка. Автоматически устанавливается диспетчером оболочки при создании оболочки.
null $taskssource
public array
Содержит задачи для загрузки и инициализации.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::$tasks[]
Свойства, используемые из Cake\ORM\Locator\LocatorAwareTrait
Свойства, используемые из Cake\Datasource\ModelAwareTrait
$modelClasssource
public string
Основное имя класса модели этого объекта. Должно быть в множественном числе. CakePHP не будет склонять имя.
Пример: для объекта с именем 'Comments' моделью будет 'Comments'. Классы плагинов должны использовать имена в формате Plugin.Comments для правильной загрузки моделей из соответствующего плагина.
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.1/class-Cake.Shell.Task.ExtractTask.html