joomla를 사용하고 API를 통해 읽었으며 JFactory 클래스가 함수에 대한 참조를 반환하지만 인터넷에서 수집 한 예제는 함수를 사용할 때 &
을 사용하지 않습니다.PHP는 참조를 반환합니다 - '&'는 호출자에게 필요합니까?
예를 들어 글로벌 세션에 대한 참조를 반환하는 Jfactory::getSession()
이라고 말하면됩니다. documentation은 그 값이 function &getSession(params){code}
으로 정의되어 있음을 명확히 보여줍니다. 그러나 in this example 일 경우 $session = JFactory::getSession();
이 아니면 $session =& JFactory::getSession();
이 아니어야합니다.
여기에 php documentation에 함수에 &
이 있고 호출자에 =&
이 있다고 나와 있습니다. 나는 또한 C 프로그래밍을 통해 갔고 만약 내가 이런 것들을 놓치면 "잘못된 포인터 변환"과 같은 오류가있을 것이다 - 이것은 좋은 프로그래밍 연습이 용납되지 않는다.
적절한 방법은 무엇입니까?
추가 정보 :
은 내가 Joomla를 1.7 사용하고 난 구성 요소를 만드는거야. 내가 PHP를 XAMPP 작업 5.3.8
최신 PHP 버전은 항상 객체를 참조로 반환하므로 '= &'는 더 이상 필요하지 않으며 실제로 경고 메시지를 표시하지 않습니다. '= &'를 사용하는 코드는 잘못 작성되었거나, 구식이거나, 구식이거나, 가능한 한 많은 PHP 버전을 사용하려고 노력하고 있으므로, 어쨌든 잘못 작성되었습니다. –
이것은 Joomla가 실제로 얼마나 끔찍한지를 상기시켜줍니다. –
[PHP 프레임 워크에서 레거시 PHP4를 지원합니까?] (http://stackoverflow.com/questions/1714023/php-framework-support-for-legacy-php4) – mario