Bonjour à tous,

Je viens de découvrir que $_SERVER, ne contenait pas les même chose en mode web ou CLI.

J'utilise ce petit code pour "voir" le contenu de $_SERVER que je lance en CLI & web pour voir la nuance:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<?php
echo '<table border="1">';
foreach ($_SERVER as $k => $v) {
    echo "<tr><td>" . $k ."</td><td>" . $v . "</td></tr>";
}
echo "</table>"
?>
En CLI ça me donne ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
ALLUSERSPROFILE		C:\Documents and Settings\AllUsers
APPDATA			C:\Documents and Settings\Administrateur\Application Data
AVENGINE		C:\PROGRA~1\CA\SHARED~1\SCANEN~1
CATPATH			C:\Program Files\CA\ARCserve Backup\DATABASE
CLASSPATH		C:\PVSW\bin\pvjdbc2x.jar;C:\PVSW\bin\pvjdbc .jar
ClusterLog		C:\WINDOWS\Cluster\cluster.log
CommonProgramFiles	C:\Program Files\Fichiers communs
COMPUTERNAME		SRVSATS
ComSpec			C:\WINDOWS\ system32\cmd.exe
CONNPATH		C:\Program Files\CA\ARCserve Backup\
FP_NO_HOST_CHECK	NO
HOMEDRIVE		C:
HOMEPATH		\Documents and Settings\Administrateur
LOGONSERVER		\\SRVSATS
NUMBER_OF_PROCESSORS	2
OS			Windows_NT
Path			C:\Program Files\HP\NCU;C:\PVSW\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\PROGRA~1\CA\SHARED~1\SCANEN~1
PATHEXT			.COM;.EXE;.BAT;.CMD;. VBS;.VBE;.JS;.JSE;.WSF;.WSH
PROCESSOR_ARCHITECTURE	x86
PROCESSOR_IDENTIFIE	x86 Family 6 Model 23 Stepping 10, GenuineIntel
PROCESSOR_LEVEL		6
PROCESSOR_REVISION	170a
ProgramFiles		C:\Program Files
PROMPT			$P$G
SESSIONNAME		Console
SystemDrive		C:
SystemRoot		C:\WINDOWS
TEMP			C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
TMP			C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
USERDOMAIN		SRVSATS
USERNAME		Administrateur
USERPROFILE		C:\Documents andSettings\Administrateur
VSL			C:\PVSW\bin
windir			C:\WINDOWS
PHP_SELF	
REQUEST_TIME		1304929807
Voici le bout de script qui utilise ces variables:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
define('SIGNATURE', '<p><i><small>Envoy&eacute; par: ' . $_SERVER['SCRIPT_NAME'] . ' depuis ' . $_SERVER['COMPUTERNAME'] . ' [' . $_SERVER['SESSIONNAME'] . ']</small></i></p>');
define('HTML_MSG_ABSENT', '<p>Cette alerte ne retourne aucune donn&eacute;e.<br />' . PHP_EOL . '<i><small>Envoy&eacute; par: ' . $_SERVER['SCRIPT_NAME'] . ' depuis ' . $_SERVER['COMPUTERNAME'] . '[' . $_SERVER['SESSIONNAME'] . ']</small></i></p>');
$_SERVER['SESSIONNAME'] & $_SERVER['COMPUTERNAME'] (présents dans le test), ne renvoient rien dans mon script. Seul $_SERVER['SCRIPT_NAME'] renvoi quelque chose....

Quelqu'un à une idée?
D'avance merci!