Beginning PHP4 예제의 버전 차이 - 프로그래밍의 기본 자세에 관하여
작성자 : 운영자 작성일 : 2002-08-14 오전 10:22:22 조회수 : 5590
안녕하세요?

책은 인쇄매체라는 특수성때문에 기술 발달을 따라가지 못합니다. 이점은 꼭 이해를 하셔야 합니다. 좋은 책을 만드는 데는 최소한 6개월여가 소요됩니다. 그나마 번역서의 경우는 원서가 나온 다음 내용을 반영할 수 있는 기회가 있었지만 그렇다해도 벌써 1년이 넘은 이야기입니다.

아무리 최근에 나온 책이라고 해도 www.php.net 에 나온 내용을 따라갈 수는 없습니다. 질문하시는 모든 분들이 관심을 가져주십사 하는 부분입니다. 최신 정보는 항상 www.php.net 을 참고하시기 바랍니다. PHP는 죽어있지 않습니다. 말씀하신대로 벌써 버전이 4.2.1입니다. 책을 쓸당시는 4.0번대 버전이라는 점을 생각해 주세요.

아쉬운 부분이기는 하지만 PHP 개발자들이 '기본'을 지나치게 자주 바꾸는 경향이 있습니다. 그리고는 Changelog를 통해 발표를 합니다. 항상 새버전이 나오면 Changelog와 Announcement를 읽으셔야 합니다.

4.0번대까지만해도 GET과 POST 변수가 기본으로 전역변수로 등록이 되지만, 보안 문제로 인해 기본 설정이 바뀌었습니다. 이부분은 책에도 나옵니다. php.ini 설정 파일에서 "register_globlas" 가 off로 돼 있다면 on으로 바꿔주어야 합니다.

최신 버전에서는 아예 이 방법도 안먹는 경우가 있다고 합니다. 이럴때 어쩔 수 없이 전역 배열 변수에서 가져오는 방법 뿐입니다. 역시 최신 버전에 추가된 부분이라 책과는 다릅니다.

$GLOBALS - 전역 변수 배열

$_GET - Get으로 넘어온 변수 배열

$_POST - Post로 넘어온 변수 배열

예를 들어, $Movie 라는 변수를 Get으로 넘겼으면 $_GET['Movie'] 로 참조해야 한다는 겁니다. 프로그램 경험이 있으시다니 이해하실 겁니다.

다시 말씀드리지만 최신 정보는 php.net 을 따라갈 수 없습니다. 또, 새버전과 함께 따라오는 Changelog 는 반드시 읽으셔야 합니다. 그렇지 않으시다면 책에서 사용하는 버전의 PHP를 써야 합니다. 무조건 최신 버전을 다운로드 받아 사용하시는 건 '공부하는 입장'에서는 문제가 많습니다.

되도록 책에서 사용하는 버전과 일치하는 PHP4 버전을 사용해 공부를 하시기 바랍니다. 최신 버전에 맞게 항상 책을 수정할 수는 없거든요. 웹사이트가 아닌 인쇄매체이기 때문에요. 그 정도 수정을 하려면 Wrox에서 2nd edition이 나오는 수밖에 없습니다^^

똑같은 질문을 수십통씩 받고 있네요^^ 질문하시는 분들의 공통점이... php.net이나 Changelog 등 가장 중요한 정보는 거의 읽지 않으신다는 겁니다. 영어로 돼 있는 문서라 귀찮거나 애로가 많다는 경우도 있고... 하지만 정말 안타까운 심정입니다. 꼭 읽어야 하거든요. 귀찮거나 어려우시더라도 제발 읽어주세요^^ 어느 언어/소프트웨어건 오픈소스라면 해당 개발 사이트 및 함께 제공되는 문서가 항상 최우선입니다. 그 어떤 책도 이를 대신할 수 없다는 점 꼭 이해해주셨으면 합니다. 책에 있는 예제가 당연한 내용인데 실행이 되지 않고 에러가 나면 PHP 버전이 일치하는지, 일치하지 않는다면 최신 버전에서 변경된 사항은 없는지 찾아보셔야 합니다. 어느 언어를 배우건 가장 기본적인 부분이니 습관을 들이셨으면 합니다.

도움이 되셨길 바랍니다.

감사합니다.

p.s. 원서에 꼭 이런 부분이 있습니다... "이 책에서 사용하는 버전은 OOO 이다."... 이렇게 사용 버전을 밝히는 건 다 이유가 있거든요^^ 해당 버전을 설치해 사용하세요. 최신 버전이 항상 좋은 건 아닙니다. 위에서도 말했지만 특히 공부하는 입장에서는 말입니다.