[php] 버전업 마이그레이션 7.3 -> 7.4
- Migrating from PHP 7.3.x to PHP 7.4.x
https://www.php.net/manual/en/migration74.php
//------------------------------------
< 비호환 변화 (Backward Incompatible Changes ) >
https://www.php.net/manual/en/migration74.incompatible.php
* fn 키워드
* 패스워드 해시 알로그즘 상수가 숫자가 아닌 문자를 리턴
PASSWORD_DEFAULT 1 -> null
PASSWORD_BCRYPT 1 -> '2y'
PASSWORD_ARGON2I 2 -> 'argon2i'
PASSWORD_ARGON2ID 3 -> 'argon2id'
* fread() , fwrite() 실패시 리턴값 0 -> false
* curl_version() 의 $version 파라미터 삭제 예정
* DateInterval 개체에서 (==, < , ..)등을 사용하면 false 리턴
* INTL_IDNA_VARIANT_2003 값 삭제 예정
idn_to_ascii() , idn_to_utf8() 의 기본값이 INTL_IDNA_VARIANT_UTS46 로 바뀜
//------------------------------------
< v7.4에서 삭제 예정 기능 > deprecated
https://www.php.net/manual/en/migration74.deprecated.php
1 ? 2 : 3 ? 4 : 5; // deprecated
(real) , is_real() -> 권장 (float) , is_float()
allow_url_include
array_key_exists()를 object에 사용할수 없음
-> 권장 : 개체에는 isset() 나 property_exists() 사용
get_magic_quotes_gpc() , get_magic_quotes_runtime() : 항상 false 리턴
- magic quotes 기능은 php 5.4에서 사라짐, 자동으로 이스케이프(addslash())하는 기능
//------------
convert_cyr_string() -> 권장 mb_convert_string(), iconv() or UConverter.
money_format() -> 권장 NumberFormatter
implode(array, glue) -> 권장 implode(glue, array)
FILTER_SANITIZE_MAGIC_QUOTES -> FILTER_SANITIZE_ADD_SLASHES
mb_ereg_replace() 비문자열 패턴은 ASCII codepoints로 변역 PHP 8에서는 string
mb_strrpos() 3번째 인자 제거됨
ReflectionType::__toString()