2014-04-16 2 views
1

임 퍼티를 사용하는 Im. 테이블에 인쇄하려면 $ _ENV를 얻으려고합니다. 나는 $ _SERVER 표시로 괜찮은 것 같지만 $ _ENV로 시도한 모든 것은 표시되지 않을 것이다. 내 코드는 다음과 같습니다

<HTML><HEAD><TITLE>$_ENV</TITLE></HEAD> 
<BODY> 
<TABLE border="1"> 
<TR><TD><b>Keys</b><TD><b>Values</b> 
<?php 
while (list ($key, $value) = each($_ENV)) { 
    print ("<TR><TD>$key<TD>$value\n"); 
} 
?> 
</TABLE> 
</BODY></HTML> 

의 GetEnv ("REMOTE_ADDR")와 인 print_r ($ _ ENV) 단지 나에게 원격 주소를 제공 할 것입니다. 나는 모든 키와 변수를 원한다. $ _SERVER 내 코드는 제출 된 양식의 모든 키를 제공합니다. $_ENV이 비어있는 당신, 당신의 while 전에 getenv("REMOTE_ADDR");을 추가하고 마술 작업을 볼 수 있기 때문이다

<?php 
//If form not submitted, display form. 
if (isset($_POST['submit'])) 
    { 

    $msg = $_POST["msg"]; 
    $name = $_POST["name"]; 
    $posts = file_get_contents("posts.txt"); 
    $posts = "$msg - $name\n" . $posts; 
    file_put_contents("posts.txt", $posts); 
    echo $posts; 

    print"<table border=1>"; 
     echo "<th>Keys</th> <th>My SERVER Info</th>"; 
foreach ($_SERVER as $key=>$val) 
     { 
     echo "<tr><td>".$key."</td><td>" .$val."</tr>"; 
     } 
    print"</table>"; 
+0

루프 앞에 'print_r ($ _ ENV);'을 쓰고 거기에있는 내용을 확인하지 않는 이유는 무엇입니까? –

답변

0

.

나는 이와 같은 예를 들어 getenv("REMOTE_ADDR"); ...

제안 .. getenv()를 들어

<HTML><HEAD><TITLE>$_ENV</TITLE></HEAD> 
<BODY> 
<TABLE border="1"> 
    <TR><TD><b>Keys</b><TD><b>Values</b> 
      <?php 
      getenv("REMOTE_ADDR"); //<--- Add here 
      while (list ($key, $value) = each($_ENV)) { 
       print ("<TR><TD>$key<TD>$value\n"); 
      } 
      ?> 
</TABLE> 
</BODY></HTML> 
+0

하지만 REMOTE_ADDR뿐만 아니라 모든 ENV 변수가 필요합니다. – TheOneNOnlyQ

0

을, PHP 구성 매개 변수 variables_order는 'E'가 포함되어야 작동 할 수 있습니다. 그렇지 않은 경우, 가질 수있는 각 값에 대해 getenv()를 호출해야합니다. 그러면 $ _ENV 배열에 추가됩니다.

또는 phpinfo() 결과를 구문 분석 할 수 있습니다. 그것은 단지 환경 ​​정보를 반환하려면, 당신은 사용할 수 있습니다

phpinfo(INFO_ENVIRONMENT); 
//Or also, as INFO_ENVIRONMENT is just a constant with the value 16 
phpinfo(16); 

또한, 나는 정말 foreach 대신하면서 목록 - 각을 사용하도록 권장합니다. 실제로는 훨씬 빠르며 읽기 쉽고 커서의 영향을받지 않으므로 reset()을 먼저 수행하지 않아도 오류를 방지 할 수 있습니다.

foreach($array as $key=>$value){ 
}