2011-05-18 3 views
6

Attention: proc_open(): qualification de la poignée manquante dans le tableau dans C: \ ... \ updatedots.php sur la ligne 102PHP proc_open ne fonctionne pas - me donne "Missing qualificatif de poignée dans le tableau"

J'essaie d'ouvrir le bloc-notes le fermer après 2 secondes. Ceci est mon code:

$descriptorspec = array(
    0 => array("pipe" => "r"), 
    1 => array("pipe" => "w"), 
    2 => array("file" => "logs/errors.txt") 
); 

// Create child and start process 
$child = array("process" => null, "pipes" => array()); 
$child["process"] = proc_open("notepad.exe > nul 2>&1", $descriptorspec, $child["pipes"]); 

Une idée de ce que cette erreur signifie et quelles sont les causes?

+0

Qu'est-ce que la ligne 102? –

+0

'proc_open' est la ligne 102 – Hubro

+0

Alors qu'est-ce que Stephan a dit. Quoi qu'il en soit, mon commentaire était une tentative de vous inciter à fournir des informations plus explicites dans vos questions à l'avenir. –

Répondre

8

Il n'est pas 0 => array("pipe" => "r") mais 0 => array("pipe", "r") ^^

De plus, en donnant un nom de fichier, vous devez spécifier le mode à utiliser. Cela fonctionne sur ma machine:

$descriptorspec = array(
    0 => array("pipe", "r"), 
    1 => array("pipe", "w"), 
    2 => array("file", "logs/errors.txt", "a")); 
// Create child and start process 
$child = array("process" => null, "pipes" => null); 
$child["process"] = proc_open("notepad.exe > nul 2>&1", $descriptorspec, $child["pipes"]); 
Questions connexes