나는 다음과 같이 약간의 애플 스크립트가 :PHP exec 및 OSASCRIPT?
beep
delay 2
tell application "Finder" to activate
그것은 단지 전경에 "찾기"창을 가지고 다음 이초 기다렸다가, 소리를한다.
명령 줄에서 실행할 때 제대로 작동합니다.
그러면 PHP가 exec() PHP 함수를 사용하여 해당 스크립트를 호출하도록합니다.
<?
$cmd = "/usr/bin/osascript \"myscript.scpt\"";
exec($cmd);
?>
여전히 정상적으로 작동합니다.
하지만 브라우저에서 동일한 PHP 스크립트를 호출해도 작동하지 않습니다! PHP가 시작되면 삐 소리가 들리므로 Apple 스크립트가 시작되지만 마지막 줄은 실행되지 않습니다. (ENV와 검사로 | 종류) 변수가 제대로 설정되어
$cmd = "HOME='/Users/mikael' && … && /usr/bin/osascript \"myscript.scpt\"";
하지만 여전히 :
나는 나는 그들이 터미널에서 모든 동일한 방식이었다 확인했다 그래서 환경 변수 일이 될 것이라고 생각 브라우저에 표시되는 PHP 스크립트 내부에서 내 사과 스크립트를 실행하고 표준 MacOS 아파치 항목을 사용하는 것은 행운이 없습니다.아이디어가 있으십니까?
감사합니다. MacOS에 로그인 컨텍스트라는 것이 있었는지 알지 못했지만이를 확인합니다. 아래에서 언급 한 해결 방법에 대해 어떻게 생각하십니까? – MikaelW
아주 좋은 해결 방법은 아닙니다. 기본적으로 MAMP 실행 프로그램은 로그인 컨텍스트로 실행된다는 사실에 달려 있습니다. 따라서 생산 단계에서 안정적으로 일하는 것이 어려울 것입니다. – duskwuff