Quantcast
Channel: PHP8タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 521

PHP Deprecated: PHP Startup: Use of mbstring.internal_encoding is deprecated

$
0
0

PHP の開発バージョン(master/8.0.0-dev)で、mbstringを有効にすると mbstring.internal_encoding is deprecatedと表示される。

$docker run --rm-it keinos/php8-jit /bin/sh
/ $php -vPHP Deprecated:  PHP Startup: Use of mbstring.internal_encoding is deprecated in Unknown on line 0

Deprecated: PHP Startup: Use of mbstring.internal_encoding is deprecated in Unknown on line 0
PHP 8.0.0-dev (cli) (built: May 21 2020 15:58:54) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.0-dev, Copyright (c), by Zend Technologies

TL; DR

mbstring.internal_encodingは PHP 8.0.0 から削除されます。予定

mbstring.internal_encodingを設定している php.iniファイルを探し、mbstring.internal_encodingの項目を削除(or ;でコメントアウト)する。

/usr/local/etc/php/conf.d/docker-php-enable-mb.ini
; Extended PHP.ini file to enable mbstring.
; =========================================
; Place this file under /usr/local/etc/php/conf.d/

zend.multibyte = On
zend.script_encoding = UTF-8
mbstring.language = Japanese
- mbstring.internal_encoding = UTF-8
+ ;mbstring.internal_encoding = UTF-8

TS; DR

もともと php.inimbstring.internal_encoding設定は PHP 5.6.0 以降から非推奨でした。

masterブランチ(PHP 8.0.0-dev)のコミット 3ca08ee(2020/03/31)で削除され Deprecatedとなり、このまま差し戻されなければ PHP 8.0.0 の正式リリースで削除されます。

おそらく、mbstring.internal_encoding以外の非推奨設定も PHP 8.0.0 を機に削除されるかもしれません。

2020/05/21 現在、非推奨とされる mbstringの設定項目。

名前変更履歴変更予定
mbstring.http_inputPHP 5.6.0 で非推奨
mbstring.http_outputPHP 5.6.0 で非推奨
mbstring.internal_encodingPHP 5.6.0 で非推奨PHP 8.0.0 で削除予定(3ca08eeで削除)
mbstring.func_overloadPHP 7.2.0 で非推奨

Viewing all articles
Browse latest Browse all 521

Trending Articles