Знаю , что по этому поводу много уже задано вопросов , и найдено ответов , но я эту проблему никак не могу решить . PHP_BINDIR показывает неверный путь к исполняемому файлу - C:\php .В свою очередь PHP_BINARY показывает правильно D:\OpenServer\modules\php\PHP-5.6\php.exe . Переменная окружения PATH настроена тоже верно . Использую openserver 5.2.2 . В чем может быть причина ?
Всё просто.
PHP_BINDIR - Константа которая записывается при компиляции. Если хотите другое значение, качаем исходники и компилируем с параметром --prefix с указанием нужной папки.
По умолчанию стандартный php устанавливается в c:\php поэтому компилируется с соответствующим значением.
Похоже ребята которые собирают openserver по этому поводу не парятся.
PHP_BINARY - Получает значение при запуске скрипта, поэтому показывает всё правильно.
http://stackoverflow.com/a/35460541/1843389
Если нужно получить имя папки то можно использовать функцию dirname()
diname(PHP_BINARY);
Сборка персонального компьютера от Artline: умный выбор для современных пользователей