substr은 PHP 8에서 문자열이 시작 문자보다 작을 때 빈 문자열을 반환합니다.

lw1.at

에 대한 PHP 문서substr() 내용 :

문자열이 시작 문자 길이보다 작 으면 FALSE가 반환됩니다.

그리고 예를 제공합니다

$rest = substr("abcdef", 4, -4);  // returns false

흥미롭게도 이것은 최신 버전에서 함수가 대신 빈 문자열을 반환하므로 PHP 8.0.0rc1부터는 사실이 아닌 것 같습니다.

https://3v4l.org/RPU1s

이것은 PHP의 버그입니까 아니면 문서화되지 않은 변경입니까 (또는 내가 뭔가를 오해하고 있습니까)?

lw1.at

https://php.watch/versions/8.0/substr-out-of-bounds 에서 언급했듯이 의도적 인 변경 인 것 같습니다.

여기에 구현되었습니다.

https://github.com/php/php-src/pull/6182

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

따옴표로 묶인 문자열에 대한 Flex 작업은 빈 문자열을 반환합니다.

Javascript : 이상한 동작 '빈 문자열'AND '거짓'은 빈 문자열을 반환합니다.

JsonEncode는 PHP에서 빈 문자열을 반환합니다.

"get"메서드는 해당 문자열에 값이있을 때 빈 문자열을 반환합니다.

SUMPRODUCT는 셀에 빈 문자열(="")이 있을 때 #Value를 반환합니다.

bash 문자열 보간은 빈 문자열을 반환합니다.

Subprocess run, check_output, Popen은 배치 파일과 작업 스케줄러에서 스크립트를 실행할 때 빈 문자열을 반환합니다.

PHP preg_split이 빈 문자열을 반환합니다.

render_to_string은 컨트롤러에서 호출 될 때 빈 문자열을 반환합니다.

Tkinter Entry 위젯은 빈 문자열을 보고 그 때문에 float로 변환할 수 없습니다.

var-Bash Shell에 할당 될 때 빈 문자열을 반환하여 명령 출력을 sed로 리디렉션하는 작업이 실패합니다.

init 메서드에 설정된 문자열 속성은 항상 빈 문자열을 반환합니다.

첫 번째가 PHP에서 특정 문자열로 시작하고 끝날 때 문자열을 다른 문자열로 바꿉니다.

PHP의 DOMXPath가 빈 문자열을 반환합니다.

php realpath ()는 빈 문자열을 반환합니다.

PHP hash ()는 빈 문자열을 반환합니다.

셀레늄 크롬 드라이버의 getText () 메서드가 때때로 빈 문자열을 반환합니다.

SwiftUI Picker가 CoreData에서 빈 문자열을 반환합니다.

이제 x번째 문자(0에서 시작) 다음에 *?가 오는 새 문자열을 반환합니다.

Java 8에서 왜 split이 결과 배열의 시작에서 빈 문자열을 제거합니까?

readAll () 또는 readAllStandardOutput ()은 실행 전에도 빈 문자열을 반환합니다.

HttpResponseMessage.Content.ReasAsString은 빈 문자열을 반환합니다.

.html ()은 빈 문자열을 반환합니다.

c_str ()은 빈 문자열을 반환합니다.

Curl은 빈 문자열을 반환합니다.

C # : 분할은 빈 문자열을 반환합니다.

Laravel 5 getClientOriginalExtension ()은 빈 문자열을 반환합니다.

$ ( "# myTextArea"). val ()은 빈 문자열을 반환합니다.

F #은 null의 경우 빈 문자열을 반환합니다.