mirror of
https://github.com/alrayyes/wiki.git
synced 2024-11-21 19:16:23 +00:00
1.4 KiB
1.4 KiB
date | id | title |
---|---|---|
2020-11-16 | 2b8781a5-59af-49f7-b761-f4c2619d2d44 | Console Cursor Control |
Description
Allows cursor to be controlled
Syntax
namespace App\Command;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Cursor;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
class SomeCommand extends Command
{
protected static $defaultName = 'app:some-command';
// ...
protected function execute(InputInterface $input, OutputInterface $output)
{
// ...
$cursor = new Cursor($output);
// argument for left/right is "number of columns" (1 by default)
// argument for top/bottom is "number of rows" (1 by default)
$cursor->moveUp(2)->moveRight();
$cursor->moveDown();
// move to an arbitrary (column, row) position
$cursor->moveToPosition(7, 15);
// you can show/hide the cursor, save/restore its position, etc.
$cursor->savePosition()->hide();
}
}
// clears the entire line where the cursor is at
$cursor->clearLine();
// clears the contents of the current line starting from the cursor position
$cursor->clearLineAfter();
// clears all the output from the cursors' current position to the end of the screen.
$cursor->clearOutput();
// clears the entire screen
$cursor->clearScreen();