PHP code example of phpbook / console

1. Go to this page and download the library: Download phpbook/console 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/ */

    

phpbook / console example snippets




/********************************************
* 
*  Declare Configurations
* 
* ******************************************/

//you php bin path
//Default "php"
\PHPBook\Console\Configuration\Request::setPHPPath('php/bin/path');

//the php script console file, read below the link [Start Application Console]
//Default null
\PHPBook\Console\Configuration\Request::setConsoleScriptPath(__DIR__ . DIRECTORY_SEPARATOR . 'console.php');

//Controllers path, the phpbook will load all controllers by folders recursively inside
//Default null. But its ontrollers');




/***************************************************
* 
*  Declare Console Controller
* 
* *************************************************/

class ConsoleController {

	/**
	 * @PHPBookConsoleRequestResource{
	 *      "setName": "'greetings'"
	 * 		"setNotes": "'Any important note'"
	 * 		"setArguments": "['name', 'age']"
	 * }
	 */
	public function runConsole($name, $age) {
		
		//your console here

		//when a parameter is not defined in prompt the value will be null.
		$name; $age;

		//set the time to the script finish, zero to unlimited time
		//if you set again, the current timer reset the counter to zero, and starts counting again
		\PHPBook\Console\Script::setSecondsScriptLimits(0);

		//you can check the O.S.
		switch(\PHPBook\Console\Script::getOS()) {
			case \PHPBook\Console\Script::$OS_WINDOWS:

				break;
			case \PHPBook\Console\Script::$OS_UNIX;

				break;
		};

		//you can write script line with auto break line
		\PHPBook\Console\Script::echoLine('Hello Jhon');

		//you can write a break line, but echoLine auto breaks the line also
		\PHPBook\Console\Script::echoBreakLine();

		//you can write a table
		\PHPBook\Console\Script::echoTable(
			'My Table Label',
			['name' => 'Name', 'age' => 'Age'],
			[
				['name' => 'Jhon', 'age' => 20], 
				['name' => 'Ana', 'age' => 21]
			]
		);

		//you can kill the script process
		\PHPBook\Console\Script::kill();

		//you can call another asynchronous console
		$run = \PHPBook\Console\Console::run('resource-name', ['parameter-one', 'parameter-two']);

		if ($run) {
			//start success
		} else {
			//start error
		};

	}

}




/***************************************************
* 
*  Console Run Resource
* 
* *************************************************/

//run a asynchronous console on php
$run = \PHPBook\Console\Console::run('resource-name', ['parameter-one', 'parameter-two']);

if ($run) {
	//start success
} else {
	//start error
};




/***************************************************
* 
*  Generate Request Proxies
* 
* *************************************************/

/* The Directory will be cleared recursively before generate, so you should have a unique folder to this proxies.*/

/* You must generate or re-generate de proxy file when create or change controllers notations */

/* You cannot start console without proxies */

\PHPBook\Console\Proxy::generate();




/***************************************************
* 
*  Start Request Proxies
* 
* *************************************************/

/* You must start proxies before start the console */

\PHPBook\Console\Proxy::start();




/***************************************************
* 
*  Start Application Console
* 
* *************************************************/

/* FILE console.php */

if (\PHPBook\Console\Script::isConsole()) {

	\PHPBook\Console\Console::start();

};