누군가 Yii 프레임 워크에서 사용자 지정 명령을 사용하여 stdin을 읽는 방법을 알고 있습니까?yii 명령에서 stdin을 읽는 방법
PHP 스크립트를 통해 수신 메일을 처리하는 스크립트를 작성하는 데 많은 시간이 걸리지 만 Yii 프레임 워크 내에서 기능이 필요합니다. 기본적으로 Yii는 CConsoleCommand를 확장 할 때 변수의 명령 줄 인수를 run() 메서드에 전달합니다. 어떤 아이디어?
누군가 Yii 프레임 워크에서 사용자 지정 명령을 사용하여 stdin을 읽는 방법을 알고 있습니까?yii 명령에서 stdin을 읽는 방법
PHP 스크립트를 통해 수신 메일을 처리하는 스크립트를 작성하는 데 많은 시간이 걸리지 만 Yii 프레임 워크 내에서 기능이 필요합니다. 기본적으로 Yii는 CConsoleCommand를 확장 할 때 변수의 명령 줄 인수를 run() 메서드에 전달합니다. 어떤 아이디어?
좋아,이게 재미있을거야.하지만 내 질문을 게시 한 후에도 알아 냈어.
당신이 Super cool Yii 프레임 워크를 사용하고 있고 이와 비슷한 것을하고 싶다면 여기에 어떻게 할 것인가. 공개 run() 메소드에서
그냥 다음을 추가
$fd = fopen("php://stdin", "r");
$content = "";
while (!feof($fd)){
$content .= fread($fd, 1024);
}
fclose($fd);
당신은 다음 전송 된 무엇이든 얻을 수있을 것입니다 /는 $ 콘텐츠 변수에 파일을 스트리밍.
이 블록 뒤에 추가 한 코드는 표준 입력을 캡처하는 즉시 처리됩니다. 당신은 표준 입력에서 입력을받을 수 CConsoleCommand::promt()
을 사용할 수 있습니다
C '') (여기 http://www.yiiframework.com/doc/api/1.1/CConsoleCommand#prompt-detail 상세 정보) 당신은 표준 입력을 열 필요가 없습니다
는 PHP CLI SAPI는 당신을 위해 자동으로 작업을 수행 똑같은 "$ fd"를 일정한 STDIN에 넣습니다. Yii는 또한 STDIN이 선언 된 것을 담당합니다. – Flavius