<?php // +---------------------------------------------------------------------- // | ThinkPHP [ WE CAN DO IT JUST THINK IT ] // +---------------------------------------------------------------------- // | Copyright (c) 2009 http://thinkphp.cn All rights reserved. // +---------------------------------------------------------------------- // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) // +---------------------------------------------------------------------- // | Author: liu21st <liu21st@gmail.com> // +---------------------------------------------------------------------- namespace Behavior; use Think\Think; /** * Boris行为扩展 */ class BorisBehavior { public function run(&$params) { if(IS_CLI){ if(!function_exists('pcntl_signal')) E("pcntl_signal not working.\nRepl mode based on Linux OS or PHP for OS X(http://php-osx.liip.ch/)\n"); Think::addMap(array( 'Boris\Boris' => VENDOR_PATH . 'Boris/Boris.php', 'Boris\Config' => VENDOR_PATH . 'Boris/Config.php', 'Boris\CLIOptionsHandler' => VENDOR_PATH . 'Boris/CLIOptionsHandler.php', 'Boris\ColoredInspector' => VENDOR_PATH . 'Boris/ColoredInspector.php', 'Boris\DumpInspector' => VENDOR_PATH . 'Boris/DumpInspector.php', 'Boris\EvalWorker' => VENDOR_PATH . 'Boris/EvalWorker.php', 'Boris\ExportInspector' => VENDOR_PATH . 'Boris/ExportInspector.php', 'Boris\Inspector' => VENDOR_PATH . 'Boris/Inspector.php', 'Boris\ReadlineClient' => VENDOR_PATH . 'Boris/ReadlineClient.php', 'Boris\ShallowParser' => VENDOR_PATH . 'Boris/ShallowParser.php', )); $boris = new \Boris\Boris(">>> "); $config = new \Boris\Config(); $config->apply($boris, true); $options = new \Boris\CLIOptionsHandler(); $options->handle($boris); $boris->onStart(sprintf("echo 'REPL MODE FOR THINKPHP \nTHINKPHP_VERSION: %s, PHP_VERSION: %s, BORIS_VERSION: %s\n';", THINK_VERSION, PHP_VERSION, $boris::VERSION)); $boris->start(); } } }