1. Go to this page and download the library: Download joetannenbaum/terminalia library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
$answer = $this->termAsk(
question: 'What is your favorite color?',
rules: [''
$answer = $this->termChoice(
question: 'What is your favorite color?',
choices: ['red', 'green', 'blue'],
rules: [' roses',
'whiskers on kittens',
'bright copper kettles',
'warm woolen mittens',
'brown paper packages tied up with strings',
'cream colored ponies',
'crisp apple strudels',
'doorbells',
'sleigh bells',
'schnitzel with noodles',
],
multiple: true,
rules: ['
use Terminalia\Helpers\Choices;
$users = User::all();
// Choices will display the user's name and return a User model
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from($users, 'name'),
);
// Choices will display the user's name and return the user ID
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from($users, 'name', 'id'),
);
// Choices will be displayed with the user's full name, will return a User model
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from($users, fn($user) => "{$user->firstName} {$user->lastName}"),
);
// Choices will be displayed with the user's full name, will return the user ID
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from(
$users,
fn($user) => "{$user->firstName} {$user->lastName}",
fn($user) => $user->id,
),
);
// Defaults will be determined by the display value when no return value is specified
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from($users, 'name'),
default: 'Joe',
);
// Defaults will be determined by the return value if it is specified
$user = $this->termChoice(
question: 'Which user would you like to edit?',
choices: Choices::from($users, 'name', 'id'),
default: 123,
);
$answer = $this->termConfirm(
question: 'Are you sure you want to do this?',
);
$this->termIntro("Welcome! Let's get started.");
$this->termOutro('All set!');
$this->termInfo('Here is the URL: https://bellows.dev');
$this->termComment([
'This is a multi-line comment! I have a lot to say, and it is easier to write as an array.',
'Here is the second part of what I have to say. Not to worry, Terminalia will handle all of the formatting.',
]);
$this->termError('Whoops! That did not go so well.');
$this->termWarning('Heads up! Output may be *too* beautiful.');
// Regular note
$this->termNote(
"You really did it. We are so proud of you. Thank you for telling us all about yourself. We can't wait to get to know you better.",
'Congratulations',
);
// Multiple lines via an array
$this->termNote(
[
'You really did it. We are so proud of you. Thank you for telling us all about yourself.',
"We can't wait to get to know you better."
],
'Congratulations',
);
// No title
$this->termNote(
[
'You really did it. We are so proud of you. Thank you for telling us all about yourself.',
"We can't wait to get to know you better."
],
);
$site = $this->termSpinner(
title: 'Creating site...',
task: function () {
// Do something here that takes a little while
$site = Site::create();
$site->deploy();
return $site;
},
message: 'Site created!',
);
$site = $this->termSpinner(
title: 'Creating site...',
task: function () {
// Do something here that takes a little while
$site = Site::create();
$site->deploy();
return $site->wasDeployed;
},
message: fn($result) => $result ? 'Site created!' : 'Error creating site.',
);
$site = $this->termSpinner(
title: 'Creating site...',
task: function (SpinnerMessenger $messenger) {
// Do something here that takes a little while
$site = Site::create();
$messenger->send('Site created, deploying');
$site->deploy();
$messenger->send('Verifying deployment');
$site->verifyDeployment();
return $site->wasDeployed;
},
message: fn($result) => $result ? 'Site created!' : 'Error creating site.',
);
$site = $this->termSpinner(
title: 'Creating site...',
task: function () {
// Do something here that takes a little while
$site = Site::create();
$site->deploy();
$site->verifyDeployment();
return $site->wasDeployed;
},
// seconds => message
longProcessMessages: [
3 => 'One moment',
7 => 'Almost done',
11 => 'Wrapping up',
],
);
$this->withTermProgressBar(collect(range(1, 20)), function () {
usleep(300_000);
}, 'Progress is being made...');