안녕하십니까? 아사달입니다.
최근 PHP 게시판을 이용한 웹 변조가 심각하게 이루어지고 있습니다.
이와 관련한 보안 권고 사항 중 PHP 버전을 최신 버전으로 업그레이드하라는 내용이 한국정보보호진흥원으로부터 공지되었습니다. 따라서
PHP 버전을 최신버전인 4.3.10으로 업그레이드했습니다.
PHP 버전 업그레이드로 인해 잘 동작하던 프로그램이 갑자기 안 될 수 있습니다.
PHP 버전이 업그레이되면서 몇 몇 함수의 사용 형식이 변경된 것 같습니다.
현재 변경된 것 중 확인된 함수는 foreach() 함수입니다.
해당 함수 처리 시 키값까지 받아서 처리하는 형식으로 변경을 해야 합니다.
아래의 예 중예제1 방식으로는 안 되며예제2 또는 예제3방식과 같이 키값을 받는 형식으로 처리하시면
됩니다.
<?php
$a
= array(1, 2,
3, 17);
foreach ($a as $v) {
echo "$a의 현재 값:
$v.n";
}
$a =
array(1, 2, 3, 17);
$i = 0;
foreach ($a
as $v) {
echo "$a[$i] =>
$v.n";
$i++;
}
$a
= array(
"one" => 1,
"two" => 2,
"three" => 3,
"seventeen"
=> 17
);
foreach ($a as $k =>
$v) {
echo "$a[$k] => $v.n";
}
?>
자세한 사항은 PHP 사이트 매뉴얼을 참조하시기 바랍니다.
위 foreach() 함수 문제는 ZendOptimizer 의 업그레이드로 해결이 가능하므로 ZendOptimizer 의 버전을
최신버전인 2.5.7로 업그레이드했습니다. ZendOptimizer 역시 버전 업그레이드 후 인코딩된 파일이 인식이 안 된다던가 하는 문제가
생길 수 있으니 홈페이지를 둘러 보시고 문제 발생 시 연락주시면 확인해 보도록 하겠습니다.
감사합니다.