음.. 실행시간이 엄청 오래걸리는 기능이 있는데 이걸 그냥 컴맨드라인에서 실행해버리고 싶거든요...
예를 들어 그게 controller에 있는 procLongTime() 이라면 컴맨드라인에서
php index.php?module=my_module&act=procLongTime
이런 식으로 말입니다. 아 물론 컴맨드라인에서 저런식으로 파라미터 주면 안되는건 압니다.
php index.php module=my_module act=procLongTime
이런 식으로 주면 안에서 처리해서 $_GET에 직접 때려박도록 수정했습니다.
근데 역시 생각대로 되진 않네요. 컴맨드라인에서 실행한 것과 웹에서 실행한건 환경이 너무 틀려서...
컴맨드라인에서 라이믹스의 모듈 콘트롤러를 직접 호출할 방법이 없을까요?
index.php를 실행하지 말고 별도로 엔트리 포인트를 만들어서 원하시는 액션을 직접 호출하세요. 어느 파일에서든지 autoload.php 파일을 인클루드하고 Context::init() 해주는 초기화 과정만 거치면 라이믹스 내부 함수와 모듈 클래스들을 자유롭게 호출할 수 있습니다.
예:
<?php
include 'common/autoload.php'; // 필요에 따라 상대경로 조정
Context::init();
$oModuleController = ModuleController::getInstance();
$oModuleController->procLongTime();