2016-07-07 11 views
0

나는 내 PHP 프로그램에서 폭발을 실행하려고하는데, 그 결과가 없습니다. 나는 결코 전에 폭발을 사용하지 않았다. 그래서 나는 내가해야하는 것에 관해 확실하지 않다. 나는 창문을 사용하고 있으며 잘 작동하고 있지만 PHP를 통해 실행하려고하면 결과가 없습니다.어떻게하면 창을 사용하여 PHP에서 폭발을 실행할 수 있습니다

$texto = "7 qseqid qseq sseqid sseq evalue bitscore"; 
$cmd = "blastp -query -test_query.fa -db notas.fa -task blastp -outfmt '.$texto.' -out musica1.fa 2>&1"; 
$result = shell_exec($cmd); 
print_r ($result); 

내가 원하는 것은 notas.fa 데이터베이스에 test_query.fa을 검색하고 musica1.fa에 결과를 배치하는 것입니다 : 이것은 내 코드를 IT. 하지만 내 musica1.fa 파일에 아무것도 없어. 누군가가 저를 도울 수 있습니까? 나는 정말로 여기에서 길을 잃는다. 방금 ​​전에 들었던 파일이 내 디렉토리에 있습니다. 다른 파일이 있어야 작동합니까? 나는 다음과 같은 메시지가있어이 코드를 실행하면 :

' Blastp ' not recognized as an internal or external command, operable program or batch file.

+0

명령의 완전한 경로를 사용해 보셨습니까? 경로 문제처럼 보입니다. – Ray

답변

0

당신은 '내 PHP 프로그램에서'명령 터미널에서 의미 '창에'말할 때 내가 믿고있어 당신은 같은 창에서 실행 의미 그 기계는 blastp 명령 터미널을 통해 PHP 스크립트를 통해 작동합니다.

이렇게하면 사용자가 가지고 있지만, PHP 스크립트 설정되지 않은 환경 경로 문제처럼 보인다 *

이 같이 당신의 PHP 스크립트에 blastp 실행 파일의 전체 경로 이름을 사용하여 시도해보십시오.

$cmd = "C:/full/path/to/blastp ..."; 

명령 터미널에 where blast*을 사용하면 프로그램 경로를 알 수 없을 때 찾을 수 있다고 생각합니다.

+0

죄송합니다. 내 영어 : 글쎄, 그냥 효과가 있어요! 고맙습니다. 비록 내 outfmt에 새로운 오류가 있습니다. "오류 : 너무 많은 위치 지정 인수 (1), 문제가되는 값 : qseqid" 무엇이 될 수 있는지 알고 싶습니다. 감사합니다. – MarceleBukvar