Skip to content

Instantly share code, notes, and snippets.

@wan2land
Last active November 9, 2015 10:15
Show Gist options
  • Select an option

  • Save wan2land/8d9861bded981d21f5e2 to your computer and use it in GitHub Desktop.

Select an option

Save wan2land/8d9861bded981d21f5e2 to your computer and use it in GitHub Desktop.

Revisions

  1. wan2land revised this gist Nov 9, 2015. 1 changed file with 3 additions and 4 deletions.
    7 changes: 3 additions & 4 deletions faker-bash.php
    Original file line number Diff line number Diff line change
    @@ -2,10 +2,10 @@
    <?php
    if (!isset($argv[1])) {
    $mode = 'record';
    } else if (in_array($argv[1], ['record', 'run'])) {
    } else if (in_array($argv[1], ['record', 'play'])) {
    $mode = $argv[1];
    } else {
    fwrite(\STDERR, "first parameter must be record or run.\n");
    fwrite(\STDERR, "first parameter must be record or play.\n");
    exit(-1);
    }

    @@ -29,7 +29,7 @@
    fwrite(\STDOUT, '$ ');
    }
    } else {
    fwrite(\STDOUT, "Run Mode...\n$ ");
    fwrite(\STDOUT, "Play Mode...\n$ ");
    while ('exit' !== $read = trim(fread(\STDIN, 100))) {
    if (isset($fakerObject[$read])) {
    fwrite(\STDOUT, $fakerObject[$read]);
    @@ -39,4 +39,3 @@
    fwrite(\STDOUT, '$ ');
    }
    }

  2. wan2land revised this gist Nov 9, 2015. No changes.
  3. wan2land created this gist Nov 9, 2015.
    42 changes: 42 additions & 0 deletions faker-bash.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,42 @@
    #!/usr/bin/env php
    <?php
    if (!isset($argv[1])) {
    $mode = 'record';
    } else if (in_array($argv[1], ['record', 'run'])) {
    $mode = $argv[1];
    } else {
    fwrite(\STDERR, "first parameter must be record or run.\n");
    exit(-1);
    }

    // load fakerObject
    $fakerObject = [];

    if (file_exists("faker.cached.php")) {
    $fakerObject = require "faker.cached.php";
    }

    if ($mode === 'record') {
    fwrite(\STDOUT, "Record Mode...\n$ ");
    while ('exit' !== $read = trim(fread(\STDIN, 100))) {
    exec("script -q /dev/null {$read} > faker.output");
    fwrite(\STDOUT, $output = file_get_contents('./faker.output'));
    $fakerObject[$read] = $output;
    file_put_contents(
    'faker.cached.php',
    '<?php return ' . var_export($fakerObject, true). ';'
    );
    fwrite(\STDOUT, '$ ');
    }
    } else {
    fwrite(\STDOUT, "Run Mode...\n$ ");
    while ('exit' !== $read = trim(fread(\STDIN, 100))) {
    if (isset($fakerObject[$read])) {
    fwrite(\STDOUT, $fakerObject[$read]);
    } else {
    fwrite(\STDERR, "\"{$read}\" is not exists!\n");
    }
    fwrite(\STDOUT, '$ ');
    }
    }