2015-04-22 3 views
0

Новичок (PHP). Попытка вызывать исполняемый файл C++ (a.out) из php. но не может этого сделать. Можно запустить скрипт a.out в терминале, как показано на рис. Использование netbeans и mac.простой php: невозможно выполнить C++ с php

Мой PHP код:

My PHP Code

Мой терминал Выход:

Terminal output

Мой выход Код:

My Code output

Мой C + + Исходный файл:

C++ Source File

Выход после использования escapeshellargument:

escapshell

Мой PHP Версия:

PHP Version

Чтение разрешений для файла:

Read Permissions

+1

Вы в нужном каталоге? Что делает 'echo getcwd();' show? – Ryan

+0

Какую версию PHP вы используете? – mhall

+0

Являются ли файлы, участвующие в ваших параметрах, читаемыми пользователем, как работает ваш веб-сервер или php-fpm? –

ответ

2

Ваш a.out может рассчитывать ровно на три параметра, но дается только два. Третий параметр будет пустым в вызове exec.

Попробуйте это:

$param3 = escapeshellarg(""); // Will make it "''" => empty but existing to a.out 
+0

Благодарим вас за ответ. Я внес изменения. Размер массива 1 теперь, но все же я не вижу никакого выхода. Я также добавил исходный файл для a.out. – 10101010

+0

Я также пробовал escapshellarg для param1 и param2, но все же я не вижу никакого вывода, например, в окне терминала. Хорошо, теперь это показывает, что размер массива равен 1. – 10101010

Смежные вопросы