교사와 동일한 코드, 오류:
치명적인 오류: Demo2test 함수를 선언할 수 없습니다. 해당 이름은 5행의 E:wwwrootphpbaseobjectnamespacetest2.php에서 이미 사용 중이기 때문입니다.
test1 코드:
<?php
namespace Demo1 ;
함수 테스트($a,$b)
{
return $a*$b;
}
?>
test2 코드:
<?php
namespace Demo2;
require ('test1.php');
함수 Demo1test 사용;
function test($a,$b)
{
return $a+$b;
}
echo test(4,5) ; // 자격이 없는 네임스페이스
echo "<hr>";
echo test(4,5);
?>
당신은 정말 공부를 많이 하는군요, 형님!
그럼 모르겠어요
최종 결과는 9
test2.php 파일
test1.php 파일
test1.php와 test2.php는 서로 다른 Demo1 및 Demo2 폴더에 배치됩니다
Demo1test 기능을 사용하세요. 이 줄만 삭제하세요
선생님의 코드는 이런 이름의 중복을 해결하는 것입니다. 그의 시연은 틀린 것이 아니지만, 동일한 코드를 사용하면 틀린 것입니다.
test2 자체에 테스트 메소드가 있고, 소개한 test1에도 테스트 메소드가 있습니다
동일한 .php에 동일한 메소드가 존재하므로 위의 오류가 발생합니다
http://php.wyscdz.com
위 오류는 PHP 버전이 7.0.12
5.6.27로 다시 전환하면 다음 오류가 보고됩니다.
치명적인 오류: 정의되지 않은 함수 Demo1test() 호출