cli_helper.php ➔ _readLine()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 1
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
<?php
2
3
(defined('BASEPATH')) OR exit('No direct script access allowed');
4
5
/*
6
 * Hepler functions for command line
7
 * Attention: tsted only on Linux
8
 */
9
10
if (!function_exists('_readLine')) {
11
12
    /**
13
     * Read user input
14
     * @param string (optional) $message enter message as a hint
15
     * @return string
16
     */
17
    function _readLine($message = '') {
18
        file_put_contents('php://stdout', $message);
19
        $handle = fopen('php://stdin', 'r');
20
        return trim(fgets($handle), PHP_EOL);
21
    }
22
23
}
24
25
if (!function_exists('_confirm')) {
26
27
    /**
28
     * Confirmation helper
29
     * @param string $question question text
30
     * @param boolean (optional, default true) $defaultApprove default status on enter (if empty)
31
     * @return boolean
32
     */
33
    function _confirm($question, $defaultApprove = true) {
34
        $question = rtrim($question);
35
36
        file_put_contents('php://stdout', sprintf('%s? [%s]: ', $question, $defaultApprove ? 'Y/n' : 'y/N'));
37
        $handle = fopen('php://stdin', 'r');
38
        $input = trim(fgets($handle), PHP_EOL);
39
40
        if (empty($input) && $defaultApprove) {
41
            return true;
42
        }
43
44
        if (strtolower($input) == 'y') {
0 ignored issues
show
Unused Code introduced by
This if statement, and the following return statement can be replaced with return strtolower($input) == 'y';.
Loading history...
45
            return true;
46
        }
47
48
        return false;
49
    }
50
51
}
52
53
if (!function_exists('_outputLine')) {
54
55
    /**
56
     * Outputs line to termainal
57
     * @param string $message
58
     */
59
    function _outputLine($message) {
60
        file_put_contents('php://stdout', $message . PHP_EOL);
61
    }
62
63
}
64
65
if (!function_exists('_executeAndOutputResult')) {
66
67
    /**
68
     * Executes linux command
69
     * @param string $command
70
     */
71
    function _executeAndOutputResult($command) {
72
        file_put_contents('php://stdout', `{$command}`);
73
    }
74
75
}