Bug #74965 [Nab]: exec() does'nt work anymore since PHP 7.0 was updated to version 7.0.21.

From: Date: Tue, 25 Jul 2017 13:01:24 +0000
Subject: Bug #74965 [Nab]: exec() does'nt work anymore since PHP 7.0 was updated to version 7.0.21.
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-210320@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=74965&edit=1

 ID:                 74965
 User updated by:    jean-christophe dot ventre at wanadoo dot fr
 Reported by:        jean-christophe dot ventre at wanadoo dot fr
 Summary:            exec() does'nt work anymore since PHP 7.0 was
                     updated to version 7.0.21.
 Status:             Not a bug
 Type:               Bug
 Package:            *General Issues
 Operating System:   windows server 2012R2
 PHP Version:        7.0.21
 Block user comment: N
 Private report:     N

 New Comment:

Finally works again after setting new environnement variables  and removing and reinstalling python
in another path


Previous Comments:
------------------------------------------------------------------------
[2017-07-24 14:16:27] jean-christophe dot ventre at wanadoo dot fr

O shit, i changed the environnements variables in windows adding entries for php and now nothing
works anymore.
Ten php websites shutdown, it's a nightmare !

------------------------------------------------------------------------
[2017-07-24 13:25:42] jean-christophe dot ventre at wanadoo dot fr

@kalle@php.net thanks for your reply.
I have just reading it. 
Ten hours now, that's going to drive me crazy.

I will definitely need your help, i swear on God that the code was perfectly working until last
week.
But now i'm starting to think that was by pure luck..

You are right this is not a php bug .
I was incriminate php because the problem happening in the same time than an automatic update of php
by plesk..

I will try to run a php script..

I'll keep you informed

------------------------------------------------------------------------
[2017-07-24 08:36:28] kalle@php.net

Hi Jean, the reason why it doesn't work has nothing to do with PHP, but the operating system
that PHP is installed off. In this case Windows, you will need to register extension as an
executable before calling that extension directly will work.

For example to make the script work for .php files, you would need to do:
1) Modify PATH to include a location to where PHP is installed
2) Modify PATHEXT to include .php
3) Run 'assoc .php=phpfile'
4) Run 'ftype phpfile="C:\path\to\php" -f "%1" -- %~2'

The same concept can be applied to Python, and that was probably the case on your host system, but
it probably doesn't work because PHP7 was installed in a different place.

You can see more about this in the manual:
http://php.net/manual/en/install.windows.legacy.index.php#install.windows.legacy.commandline

Thank you for using PHP!

------------------------------------------------------------------------
[2017-07-24 08:14:45] jean-christophe dot ventre at wanadoo dot fr

Thanks for your help,but 

$cmd='.\assets\python\service-account.py C:\\Python27\\python.exe';
exec("$cmd", $output);

is working perfectly well on three differents servers and php configurations  since 2 years now.

however, you are right,
$cmd='C:\\Python27\\python.exe .\assets\python\service-account.py ';
exec("$cmd", $output); 
works as well.

The two syntaxes work, not so sure one of them  must be prohibited ?

Whatever, the code was working perfectly well until the  php 7 update from 7.0.0 to 7.0.21 and i am
still looking why

------------------------------------------------------------------------
[2017-07-22 08:41:01] ab@php.net

Obvious mistake in the command.

Thanks.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=74965


--
Edit this bug report at https://bugs.php.net/bug.php?id=74965&edit=1


Thread (8 messages)

« previous php.bugs (#210320) next »