php 함수 전달 값 의 인용 전달 주의사항 분석
Strict standards: Only variables should be passed by reference
인터넷 에서 자 료 를 찾 았 다 는 말 이 있 습 니 다.
php 5.3 이상 버 전에 서 이 문제 가 발생 할 수 있 습 니 다.php 설정 과 관련 이 있 을 것 입 니 다.이 문장 을 두 마디 로 뜯 으 면 문제 가 없습니다.array 때문에walk 의 매개 변 수 는 전달 을 참조 하 는 것 입 니 다.5.3 이상 의 기본 값 은 구체 적 인 변수 만 전달 할 수 있 고 함수 로 값 을 되 돌려 줄 수 없습니다.물론 php.ini 의 error 도 수정 할 수 있 습 니 다.reporting = E_ALL | E_STRCT,그러나 이것 은 결국 규범 에 부합 되 지 않 는 다.
$suffix = array_pop(explode(".",$file_name));
왜 하 이 버 전이 이렇게 제한 되 나 요?나 는 수첩 의 함수 원형 을 보 러 간다.
mixed array_pop ( array &$array )
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] )
&기 호 는 변 수 를 입력 하 는 것 을 지정 하고 인용 방식 으로 전달 합 니 다.다음으로 변경:
$file_name_arr = explode(".",$file_name);
$suffix = array_pop($file_name_arr);
그냥.사실 경고 만 했 을 뿐이다.치 명 적 인 잘못 이 아니 라정상 적 인 결 과 는 얻 을 수 있다.예 를 들 어 파일 이름 의 접 두 사 를 얻 는 것 은 정상 입 니 다.
더 많은 PHP 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 논문 에서 말 한 것 이 여러분 의 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel - 변환된 유효성 검사 규칙으로 API 요청 제공동적 콘텐츠를 위해 API를 통해 Laravel CMS에 연결하는 모바일 앱(또는 웹사이트) 구축을 고려하십시오. 이제 앱은 CMS에서 번역된 콘텐츠를 받을 것으로 예상되는 다국어 앱이 될 수 있습니다. 일반적으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.