複数バージョンのPHPをインストールしてみたかったので、phpenvを使ってPHPをインストールしました。
依存パッケージのインストールが必要だったので備忘録としてまとめます。
環境
前提
- Homebrewがインストールされていること
phpenvのインストール
git clone https://github.com/phpenv/phpenv.git ~/.phpenv echo 'export PATH="$HOME/.phpenv/bin:$PATH"' >> ~/.zshenv echo 'eval "$(phpenv init -)"' >> ~/.zshrc exec $SHELL -l git clone https://github.com/php-build/php-build $(phpenv root)/plugins/php-build git clone https://github.com/madumlao/phpenv-aliases.git $(phpenv root)/plugins/phpenv-aliases git clone https://github.com/ngyuki/phpenv-composer.git $(phpenv root)/plugins/phpenv-composer git clone https://github.com/matayoshi/phpenv-update-all.git $(phpenv root)/plugins/phpenv-update-all
依存パッケージのインストール
brew update brew upgrade brew install pkg-config openssl@1.1 bzip2 libpng libjpeg libiconv icu4c oniguruma tidy-html5 libzip autoconf
※openssl@3パッケージではビルド時にエラーが発生しました。
(略) [Compiling]: /var/tmp/php-build/source/8.0.15 ----------------- | BUILD ERROR | ----------------- Here are the last 10 lines from the log: ----------------------------------------- /usr/local/Cellar/openssl@3/3.0.1/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0' # define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0) ^ /usr/local/Cellar/openssl@3/3.0.1/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED' # define OSSL_DEPRECATED(since) __attribute__((deprecated)) ^ 108 warnings and 1 error generated. make: *** [ext/openssl/openssl.lo] Error 1 make: *** Waiting for unfinished jobs.... 3 warnings generated. ----------------------------------------- The full Log is available at '/tmp/php-build.8.0.15.20220122162304.log'. [Warn]: Aborting build.
PHP 8.0の最新バージョンを調べる
2022/01/22時点では、8.0.15が最新のようです。
$ phpenv update-all $ phpenv install --list | grep 8.0 8.0.0 8.0.10 8.0.11 8.0.12 8.0.13 8.0.14 8.0.15 8.0.1 8.0.2 8.0.3 8.0.5 8.0.6 8.0.7 8.0.8 8.0.9 8.0snapshot
PHP 8.0のビルドとインストール
通信環境やPCスペック等で変わりますが、手元の環境だと10分程度かかりました。
$ PKG_CONFIG_PATH="$(brew --prefix openssl@1.1)/lib/pkgconfig:$(brew --prefix icu4c)/lib/pkgconfig" \ PHP_BUILD_CONFIGURE_OPTS="--with-bz2=$(brew --prefix bzip2) --with-iconv=$(brew --prefix libiconv)" \ phpenv install 8.0.15 [Info]: Loaded extension plugin [Info]: Loaded apc Plugin. [Info]: Loaded composer Plugin. [Info]: Loaded github Plugin. [Info]: Loaded uprofiler Plugin. [Info]: Loaded xdebug Plugin. [Info]: Loaded xhprof Plugin. [Info]: Loaded zendopcache Plugin. [Info]: php.ini-production gets used as php.ini [Info]: Building 8.0.15 into /Users/user/.phpenv/versions/8.0.15 [Downloading]: https://secure.php.net/distributions/php-8.0.15.tar.bz2 [Preparing]: /var/tmp/php-build/source/8.0.15 [Compiling]: /var/tmp/php-build/source/8.0.15 [xdebug]: Installing version 3.1.2 [Downloading]: http://xdebug.org/files/xdebug-3.1.2.tgz [xdebug]: Compiling xdebug in /var/tmp/php-build/source/xdebug-3.1.2 [xdebug]: Installing xdebug configuration in /Users/user/.phpenv/versions/8.0.15/etc/conf.d/xdebug.ini [xdebug]: Cleaning up. Makefile:245: warning: overriding commands for target `test' Makefile:132: warning: ignoring old commands for target `test' [Info]: Enabling Opcache... [Info]: Done [Info]: The Log File is not empty, but the Build did not fail. Maybe just warnings got logged. You can review the log in /tmp/php-build.8.0.15.20220122162751.log or rebuild with '--verbose' option [Success]: Built 8.0.15 successfully. 8.0 => 8.0.15
phpenv-aliases を入れているので、自動的にエイリアス( 8.0 => 8.0.15
)が設定されます。
$ phpenv shell 8.0 8.0 $ phpenv rehash Download composer.phar ... Move composer.phar to /Users/user/.phpenv/versions/8.0/composer $ php -v PHP 8.0.15 (cli) (built: Jan 22 2022 16:32:47) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.15, Copyright (c) Zend Technologies with Zend OPcache v8.0.15, Copyright (c), by Zend Technologies with Xdebug v3.1.2, Copyright (c) 2002-2021, by Derick Rethans
Visual Studio Codeで利用するには
ビルドしたPHPをvscodeで利用する場合は php.validate.executablePath
に ${env:HOME}/.phpenv/shims/php
あるいは ${env:HOME}/.phpenv/versions/8.0/bin/php
を指定します。
.phpenv/shims/php
の場合は phpenv global (version)
や .php-version
を参照して使用するPHPのバージョンを判断してくれるようです。
{ "php.validate.executablePath": "${env:HOME}/.phpenv/shims/php" }
おまけ
php -m
$ php -m [PHP Modules] bcmath bz2 Core ctype curl date dom exif fileinfo filter ftp gd hash iconv intl json libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix readline Reflection session shmop SimpleXML soap sockets SPL sqlite3 standard sysvsem sysvshm tidy tokenizer xdebug xml xmlreader xmlwriter xsl Zend OPcache zip zlib [Zend Modules] Xdebug Zend OPcache
php -i
$ php -i phpinfo() PHP Version => 8.0.15 System => Darwin mac.local 21.2.0 Darwin Kernel Version 21.2.0: Sun Nov 28 20:28:54 PST 2021; root:xnu-8019.61.5~1/RELEASE_X86_64 x86_64 Build Date => Jan 22 2022 16:31:53 Build System => Darwin mac.local 21.2.0 Darwin Kernel Version 21.2.0: Sun Nov 28 20:28:54 PST 2021; root:xnu-8019.61.5~1/RELEASE_X86_64 x86_64 Configure Command => './configure' '--with-config-file-path=/Users/user/.phpenv/versions/8.0.15/etc' '--with-config-file-scan-dir=/Users/user/.phpenv/versions/8.0.15/etc/conf.d' '--prefix=/Users/user/.phpenv/versions/8.0.15' '--libexecdir=/Users/user/.phpenv/versions/8.0.15/libexec' '--datadir=/Users/user/.phpenv/versions/8.0.15/share/php' '--mandir=/Users/user/.phpenv/versions/8.0.15/share/man' '--enable-sockets' '--enable-exif' '--with-zlib' '--with-zlib-dir=/usr' '--with-bz2' '--enable-intl' '--enable-soap' '--enable-xmlreader' '--with-xsl' '--enable-ftp' '--enable-cgi' '--with-curl=/usr' '--with-tidy' '--enable-sysvsem' '--enable-sysvshm' '--enable-shmop' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-pdo-sqlite' '--enable-pcntl' '--enable-mbstring' '--disable-debug' '--enable-fpm' '--enable-bcmath' '--enable-phpdbg' '--enable-gd' '--with-jpeg' '--with-zip' '--with-mhash' '--with-libedit' '--with-png-dir=/usr/X11' '--with-openssl=/usr/local/opt/openssl@3' '--with-icu-dir=/usr/local/opt/icu4c' '--with-bz2=/usr/local/opt/bzip2' '--with-iconv=/usr/local/opt/libiconv' 'PKG_CONFIG_PATH=/usr/local/opt/openssl@1.1/lib/pkgconfig:/usr/local/opt/icu4c/lib/pkgconfig:/usr/local/opt/openssl@3/lib/pkgconfig:/usr/local/opt/icu4c/lib/pkgconfig' Server API => Command Line Interface Virtual Directory Support => disabled Configuration File (php.ini) Path => /Users/user/.phpenv/versions/8.0.15/etc Loaded Configuration File => /Users/user/.phpenv/versions/8.0.15/etc/php.ini Scan this dir for additional .ini files => /Users/user/.phpenv/versions/8.0.15/etc/conf.d Additional .ini files parsed => /Users/user/.phpenv/versions/8.0.15/etc/conf.d/xdebug.ini PHP API => 20200930 PHP Extension => 20200930 Zend Extension => 420200930 Zend Extension Build => API420200930,NTS PHP Extension Build => API20200930,NTS Debug Build => no Thread Safety => disabled Zend Signal Handling => enabled Zend Memory Manager => enabled Zend Multibyte Support => provided by mbstring IPv6 Support => enabled DTrace Support => disabled Registered PHP Streams => https, ftps, compress.zlib, compress.bzip2, php, file, glob, data, http, ftp, phar, zip Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, tls, tlsv1.0, tlsv1.1, tlsv1.2, tlsv1.3 Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, convert.*, consumed, dechunk This program makes use of the Zend Scripting Language Engine: Zend Engine v4.0.15, Copyright (c) Zend Technologies with Zend OPcache v8.0.15, Copyright (c), by Zend Technologies with Xdebug v3.1.2, Copyright (c) 2002-2021, by Derick Rethans _______________________________________________________________________ Configuration bcmath BCMath support => enabled Directive => Local Value => Master Value bcmath.scale => 0 => 0 bz2 BZip2 Support => Enabled Stream Wrapper support => compress.bzip2:// Stream Filter support => bzip2.decompress, bzip2.compress BZip2 Version => 1.0.8, 13-Jul-2019 Core PHP Version => 8.0.15 Directive => Local Value => Master Value allow_url_fopen => On => On allow_url_include => Off => Off arg_separator.input => & => & arg_separator.output => & => & auto_append_file => no value => no value auto_globals_jit => On => On auto_prepend_file => no value => no value browscap => no value => no value default_charset => UTF-8 => UTF-8 default_mimetype => text/html => text/html disable_classes => no value => no value disable_functions => no value => no value display_errors => Off => Off display_startup_errors => Off => Off doc_root => no value => no value docref_ext => no value => no value docref_root => no value => no value enable_dl => Off => Off enable_post_data_reading => On => On error_append_string => no value => no value error_log => no value => no value error_prepend_string => no value => no value error_reporting => 22527 => 22527 expose_php => On => On extension_dir => /Users/user/.phpenv/versions/8.0.15/lib/php/extensions/no-debug-non-zts-20200930 => /Users/user/.phpenv/versions/8.0.15/lib/php/extensions/no-debug-non-zts-20200930 file_uploads => On => On hard_timeout => 2 => 2 highlight.comment => <font style="color: #FF8000">#FF8000</font> => <font style="color: #FF8000">#FF8000</font> highlight.default => <font style="color: #0000BB">#0000BB</font> => <font style="color: #0000BB">#0000BB</font> highlight.html => <font style="color: #000000">#000000</font> => <font style="color: #000000">#000000</font> highlight.keyword => <font style="color: #007700">#007700</font> => <font style="color: #007700">#007700</font> highlight.string => <font style="color: #DD0000">#DD0000</font> => <font style="color: #DD0000">#DD0000</font> html_errors => Off => Off ignore_repeated_errors => Off => Off ignore_repeated_source => Off => Off ignore_user_abort => Off => Off implicit_flush => On => On include_path => .: => .: input_encoding => no value => no value internal_encoding => no value => no value log_errors => On => On log_errors_max_len => 1024 => 1024 mail.add_x_header => Off => Off mail.force_extra_parameters => no value => no value mail.log => no value => no value max_execution_time => 0 => 0 max_file_uploads => 20 => 20 max_input_nesting_level => 64 => 64 max_input_time => -1 => -1 max_input_vars => 1000 => 1000 memory_limit => 128M => 128M open_basedir => no value => no value output_buffering => 0 => 0 output_encoding => no value => no value output_handler => no value => no value post_max_size => 8M => 8M precision => 14 => 14 realpath_cache_size => 4096K => 4096K realpath_cache_ttl => 120 => 120 register_argc_argv => On => On report_memleaks => On => On report_zend_debug => Off => Off request_order => GP => GP sendmail_from => no value => no value sendmail_path => /usr/sbin/sendmail -t -i => /usr/sbin/sendmail -t -i serialize_precision => -1 => -1 short_open_tag => Off => Off SMTP => localhost => localhost smtp_port => 25 => 25 sys_temp_dir => no value => no value syslog.facility => LOG_USER => LOG_USER syslog.filter => no-ctrl => no-ctrl syslog.ident => php => php unserialize_callback_func => no value => no value upload_max_filesize => 2M => 2M upload_tmp_dir => no value => no value user_dir => no value => no value user_ini.cache_ttl => 300 => 300 user_ini.filename => .user.ini => .user.ini variables_order => GPCS => GPCS xmlrpc_error_number => 0 => 0 xmlrpc_errors => Off => Off zend.assertions => -1 => -1 zend.detect_unicode => On => On zend.enable_gc => On => On zend.exception_ignore_args => On => On zend.exception_string_param_max_len => 0 => 0 zend.multibyte => Off => Off zend.script_encoding => no value => no value zend.signal_check => Off => Off ctype ctype functions => enabled curl cURL support => enabled cURL Information => 7.77.0 Age => 9 Features AsynchDNS => Yes CharConv => No Debug => No GSS-Negotiate => No IDN => No IPv6 => Yes krb4 => No Largefile => Yes libz => Yes NTLM => Yes NTLMWB => Yes SPNEGO => Yes SSL => Yes SSPI => No TLS-SRP => No HTTP2 => Yes GSSAPI => Yes KERBEROS5 => Yes UNIX_SOCKETS => Yes PSL => No HTTPS_PROXY => Yes MULTI_SSL => Yes BROTLI => No Protocols => dict, file, ftp, ftps, gopher, gophers, http, https, imap, imaps, ldap, ldaps, mqtt, pop3, pop3s, rtsp, smb, smbs, smtp, smtps, telnet, tftp Host => x86_64-apple-darwin21.0 SSL Version => (SecureTransport) LibreSSL/2.8.3 ZLib Version => 1.2.11 Directive => Local Value => Master Value curl.cainfo => no value => no value date date/time support => enabled timelib version => 2020.03 "Olson" Timezone Database Version => 2021.5 Timezone Database => internal Default timezone => UTC Directive => Local Value => Master Value date.default_latitude => 31.7667 => 31.7667 date.default_longitude => 35.2333 => 35.2333 date.sunrise_zenith => 90.833333 => 90.833333 date.sunset_zenith => 90.833333 => 90.833333 date.timezone => no value => no value dom DOM/XML => enabled DOM/XML API Version => 20031129 libxml Version => 2.9.4 HTML Support => enabled XPath Support => enabled XPointer Support => enabled Schema Support => enabled RelaxNG Support => enabled exif EXIF Support => enabled Supported EXIF Version => 0220 Supported filetypes => JPEG, TIFF Multibyte decoding support using mbstring => enabled Extended EXIF tag formats => Canon, Casio, Fujifilm, Nikon, Olympus, Samsung, Panasonic, DJI, Sony, Pentax, Minolta, Sigma, Foveon, Kyocera, Ricoh, AGFA, Epson Directive => Local Value => Master Value exif.decode_jis_intel => JIS => JIS exif.decode_jis_motorola => JIS => JIS exif.decode_unicode_intel => UCS-2LE => UCS-2LE exif.decode_unicode_motorola => UCS-2BE => UCS-2BE exif.encode_jis => no value => no value exif.encode_unicode => ISO-8859-15 => ISO-8859-15 fileinfo fileinfo support => enabled libmagic => 539 filter Input Validation and Filtering => enabled Directive => Local Value => Master Value filter.default => unsafe_raw => unsafe_raw filter.default_flags => no value => no value ftp FTP support => enabled FTPS support => enabled gd GD Support => enabled GD Version => bundled (2.1.0 compatible) GIF Read Support => enabled GIF Create Support => enabled JPEG Support => enabled libJPEG Version => 9 compatible PNG Support => enabled libPNG Version => 1.6.37 WBMP Support => enabled XBM Support => enabled BMP Support => enabled TGA Read Support => enabled Directive => Local Value => Master Value gd.jpeg_ignore_warning => 1 => 1 hash hash support => enabled Hashing Engines => md2 md4 md5 sha1 sha224 sha256 sha384 sha512/224 sha512/256 sha512 sha3-224 sha3-256 sha3-384 sha3-512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost gost-crypto adler32 crc32 crc32b crc32c fnv132 fnv1a32 fnv164 fnv1a64 joaat haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5 MHASH support => Enabled MHASH API Version => Emulated Support iconv iconv support => enabled iconv implementation => libiconv iconv library version => 1.16 Directive => Local Value => Master Value iconv.input_encoding => no value => no value iconv.internal_encoding => no value => no value iconv.output_encoding => no value => no value intl Internationalization support => enabled ICU version => 69.1 ICU Data version => 69.1 ICU Unicode version => 13.0 Directive => Local Value => Master Value intl.default_locale => no value => no value intl.error_level => 0 => 0 intl.use_exceptions => Off => Off json json support => enabled libxml libXML support => active libXML Compiled Version => 2.9.4 libXML Loaded Version => 20904 libXML streams => enabled mbstring Multibyte Support => enabled Multibyte string engine => libmbfl HTTP input encoding translation => disabled libmbfl version => 1.3.2 mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. Multibyte (japanese) regex support => enabled Multibyte regex (oniguruma) version => 6.9.7 Directive => Local Value => Master Value mbstring.detect_order => no value => no value mbstring.encoding_translation => Off => Off mbstring.http_input => no value => no value mbstring.http_output => no value => no value mbstring.http_output_conv_mimetypes => ^(text/|application/xhtml\+xml) => ^(text/|application/xhtml\+xml) mbstring.internal_encoding => no value => no value mbstring.language => neutral => neutral mbstring.regex_retry_limit => 1000000 => 1000000 mbstring.regex_stack_limit => 100000 => 100000 mbstring.strict_detection => Off => Off mbstring.substitute_character => no value => no value mysqli MysqlI Support => enabled Client API library version => mysqlnd 8.0.15 Active Persistent Links => 0 Inactive Persistent Links => 0 Active Links => 0 Directive => Local Value => Master Value mysqli.allow_local_infile => Off => Off mysqli.allow_persistent => On => On mysqli.default_host => no value => no value mysqli.default_port => 3306 => 3306 mysqli.default_pw => no value => no value mysqli.default_socket => no value => no value mysqli.default_user => no value => no value mysqli.max_links => Unlimited => Unlimited mysqli.max_persistent => Unlimited => Unlimited mysqli.reconnect => Off => Off mysqli.rollback_on_cached_plink => Off => Off mysqlnd mysqlnd => enabled Version => mysqlnd 8.0.15 Compression => supported core SSL => supported extended SSL => supported Command buffer size => 4096 Read buffer size => 32768 Read timeout => 86400 Collecting statistics => Yes Collecting memory statistics => No Tracing => n/a Loaded plugins => mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_caching_sha2_password,auth_plugin_sha256_password API Extensions => pdo_mysql,mysqli openssl OpenSSL support => enabled OpenSSL Library Version => OpenSSL 1.1.1m 14 Dec 2021 OpenSSL Header Version => OpenSSL 1.1.1m 14 Dec 2021 Openssl default config => /usr/local/etc/openssl@1.1/openssl.cnf Directive => Local Value => Master Value openssl.cafile => no value => no value openssl.capath => no value => no value pcntl pcntl support => enabled pcre PCRE (Perl Compatible Regular Expressions) Support => enabled PCRE Library Version => 10.35 2020-05-09 PCRE Unicode Version => 13.0.0 PCRE JIT Support => enabled PCRE JIT Target => x86 64bit (little endian + unaligned) Directive => Local Value => Master Value pcre.backtrack_limit => 1000000 => 1000000 pcre.jit => 1 => 1 pcre.recursion_limit => 100000 => 100000 PDO PDO support => enabled PDO drivers => mysql, sqlite pdo_mysql PDO Driver for MySQL => enabled Client API version => mysqlnd 8.0.15 Directive => Local Value => Master Value pdo_mysql.default_socket => /tmp/mysql.sock => /tmp/mysql.sock pdo_sqlite PDO Driver for SQLite 3.x => enabled SQLite Library => 3.36.0 Phar Phar: PHP Archive support => enabled Phar API version => 1.1.1 Phar-based phar archives => enabled Tar-based phar archives => enabled ZIP-based phar archives => enabled gzip compression => enabled bzip2 compression => enabled OpenSSL support => enabled Phar based on pear/PHP_Archive, original concept by Davey Shafik. Phar fully realized by Gregory Beaver and Marcus Boerger. Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle. Directive => Local Value => Master Value phar.cache_list => no value => no value phar.readonly => On => On phar.require_hash => On => On posix POSIX support => enabled readline Readline Support => enabled Readline library => EditLine wrapper Directive => Local Value => Master Value cli.pager => no value => no value cli.prompt => \b \> => \b \> Reflection Reflection => enabled session Session Support => enabled Registered save handlers => files user Registered serializer handlers => php_serialize php php_binary Directive => Local Value => Master Value session.auto_start => Off => Off session.cache_expire => 180 => 180 session.cache_limiter => nocache => nocache session.cookie_domain => no value => no value session.cookie_httponly => no value => no value session.cookie_lifetime => 0 => 0 session.cookie_path => / => / session.cookie_samesite => no value => no value session.cookie_secure => 0 => 0 session.gc_divisor => 1000 => 1000 session.gc_maxlifetime => 1440 => 1440 session.gc_probability => 1 => 1 session.lazy_write => On => On session.name => PHPSESSID => PHPSESSID session.referer_check => no value => no value session.save_handler => files => files session.save_path => no value => no value session.serialize_handler => php => php session.sid_bits_per_character => 5 => 5 session.sid_length => 26 => 26 session.upload_progress.cleanup => On => On session.upload_progress.enabled => On => On session.upload_progress.freq => 1% => 1% session.upload_progress.min_freq => 1 => 1 session.upload_progress.name => PHP_SESSION_UPLOAD_PROGRESS => PHP_SESSION_UPLOAD_PROGRESS session.upload_progress.prefix => upload_progress_ => upload_progress_ session.use_cookies => 1 => 1 session.use_only_cookies => 1 => 1 session.use_strict_mode => 0 => 0 session.use_trans_sid => 0 => 0 shmop shmop support => enabled SimpleXML SimpleXML support => enabled Schema support => enabled soap Soap Client => enabled Soap Server => enabled Directive => Local Value => Master Value soap.wsdl_cache => 1 => 1 soap.wsdl_cache_dir => /tmp => /tmp soap.wsdl_cache_enabled => On => On soap.wsdl_cache_limit => 5 => 5 soap.wsdl_cache_ttl => 86400 => 86400 sockets Sockets Support => enabled SPL SPL support => enabled Interfaces => OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException sqlite3 SQLite3 support => enabled SQLite Library => 3.36.0 Directive => Local Value => Master Value sqlite3.defensive => On => On sqlite3.extension_dir => no value => no value standard Dynamic Library Support => enabled Path to sendmail => /usr/sbin/sendmail -t -i Directive => Local Value => Master Value assert.active => On => On assert.bail => Off => Off assert.callback => no value => no value assert.exception => On => On assert.warning => On => On auto_detect_line_endings => Off => Off default_socket_timeout => 60 => 60 from => no value => no value session.trans_sid_hosts => no value => no value session.trans_sid_tags => a=href,area=href,frame=src,form= => a=href,area=href,frame=src,form= unserialize_max_depth => 4096 => 4096 url_rewriter.hosts => no value => no value url_rewriter.tags => form= => form= user_agent => no value => no value sysvsem sysvsem support => enabled sysvshm sysvshm support => enabled tidy Tidy support => enabled libTidy Version => 5.8.0 libTidy Release => 2021/07/10 Directive => Local Value => Master Value tidy.clean_output => no value => no value tidy.default_config => no value => no value tokenizer Tokenizer Support => enabled xdebug __ __ _ _ \ \ / / | | | | \ V / __| | ___| |__ _ _ __ _ > < / _` |/ _ \ '_ \| | | |/ _` | / . \ (_| | __/ |_) | |_| | (_| | /_/ \_\__,_|\___|_.__/ \__,_|\__, | __/ | |___/ Version => 3.1.2 Support Xdebug on Patreon, GitHub, or as a business: https://xdebug.org/support Enabled Features (through 'xdebug.mode' setting) Feature => Enabled/Disabled Development Helpers => ✔ enabled Coverage => ✘ disabled GC Stats => ✘ disabled Profiler => ✘ disabled Step Debugger => ✘ disabled Tracing => ✘ disabled Optional Features Compressed File Support => yes (gzip) Clock Source => clock_gettime_nsec_np Directive => Local Value => Master Value xdebug.auto_trace => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.cli_color => 0 => 0 xdebug.client_discovery_header => no value => no value xdebug.client_host => localhost => localhost xdebug.client_port => 9003 => 9003 xdebug.cloud_id => no value => no value xdebug.collect_assignments => Off => Off xdebug.collect_includes => (setting removed in Xdebug 3) => (setting removed in Xdebug 3) xdebug.collect_params => (setting removed in Xdebug 3) => (setting removed in Xdebug 3) xdebug.collect_return => Off => Off xdebug.collect_vars => (setting removed in Xdebug 3) => (setting removed in Xdebug 3) xdebug.connect_timeout_ms => 200 => 200 xdebug.coverage_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.default_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.discover_client_host => Off => Off xdebug.dump.COOKIE => no value => no value xdebug.dump.ENV => no value => no value xdebug.dump.FILES => no value => no value xdebug.dump.GET => no value => no value xdebug.dump.POST => no value => no value xdebug.dump.REQUEST => no value => no value xdebug.dump.SERVER => no value => no value xdebug.dump.SESSION => no value => no value xdebug.dump_globals => On => On xdebug.dump_once => On => On xdebug.dump_undefined => Off => Off xdebug.file_link_format => no value => no value xdebug.filename_format => no value => no value xdebug.force_display_errors => Off => Off xdebug.force_error_reporting => 0 => 0 xdebug.gc_stats_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.gc_stats_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.gc_stats_output_name => gcstats.%p => gcstats.%p xdebug.halt_level => 0 => 0 xdebug.idekey => no value => no value xdebug.log => no value => no value xdebug.log_level => 7 => 7 xdebug.max_nesting_level => 256 => 256 xdebug.max_stack_frames => -1 => -1 xdebug.mode => develop => develop xdebug.output_dir => /var/tmp/ => /var/tmp/ xdebug.overload_var_dump => (setting removed in Xdebug 3) => (setting removed in Xdebug 3) xdebug.profiler_append => Off => Off xdebug.profiler_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.profiler_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.profiler_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.profiler_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p xdebug.remote_autostart => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_connect_back => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_host => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_log => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_log_level => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_mode => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_port => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.remote_timeout => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.scream => Off => Off xdebug.show_error_trace => Off => Off xdebug.show_exception_trace => Off => Off xdebug.show_local_vars => Off => Off xdebug.show_mem_delta => (setting removed in Xdebug 3) => (setting removed in Xdebug 3) xdebug.start_upon_error => default => default xdebug.start_with_request => default => default xdebug.trace_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.trace_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.trace_format => 0 => 0 xdebug.trace_options => 0 => 0 xdebug.trace_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3) xdebug.trace_output_name => trace.%c => trace.%c xdebug.trigger_value => no value => no value xdebug.use_compression => 1 => 1 xdebug.var_display_max_children => 128 => 128 xdebug.var_display_max_data => 512 => 512 xdebug.var_display_max_depth => 3 => 3 xml XML Support => active XML Namespace Support => active libxml2 Version => 2.9.4 xmlreader XMLReader => enabled xmlwriter XMLWriter => enabled xsl XSL => enabled libxslt Version => 1.1.29 libxslt compiled against libxml Version => 2.9.4 EXSLT => enabled libexslt Version => 1.1.29 Zend OPcache Opcode Caching => Disabled Optimization => Disabled SHM Cache => Enabled File Cache => Disabled JIT => On Startup Failed => Opcode Caching is disabled for CLI Directive => Local Value => Master Value opcache.blacklist_filename => no value => no value opcache.consistency_checks => 0 => 0 opcache.dups_fix => Off => Off opcache.enable => On => On opcache.enable_cli => Off => Off opcache.enable_file_override => Off => Off opcache.error_log => no value => no value opcache.file_cache => no value => no value opcache.file_cache_consistency_checks => On => On opcache.file_cache_only => Off => Off opcache.file_update_protection => 2 => 2 opcache.force_restart_timeout => 180 => 180 opcache.huge_code_pages => Off => Off opcache.interned_strings_buffer => 8 => 8 opcache.jit => tracing => tracing opcache.jit_bisect_limit => 0 => 0 opcache.jit_blacklist_root_trace => 16 => 16 opcache.jit_blacklist_side_trace => 8 => 8 opcache.jit_buffer_size => 0 => 0 opcache.jit_debug => 0 => 0 opcache.jit_hot_func => 127 => 127 opcache.jit_hot_loop => 64 => 64 opcache.jit_hot_return => 8 => 8 opcache.jit_hot_side_exit => 8 => 8 opcache.jit_max_exit_counters => 8192 => 8192 opcache.jit_max_loop_unrolls => 8 => 8 opcache.jit_max_polymorphic_calls => 2 => 2 opcache.jit_max_recursive_calls => 2 => 2 opcache.jit_max_recursive_returns => 2 => 2 opcache.jit_max_root_traces => 1024 => 1024 opcache.jit_max_side_traces => 128 => 128 opcache.jit_prof_threshold => 0.005 => 0.005 opcache.lockfile_path => /tmp => /tmp opcache.log_verbosity_level => 1 => 1 opcache.max_accelerated_files => 10000 => 10000 opcache.max_file_size => 0 => 0 opcache.max_wasted_percentage => 5 => 5 opcache.memory_consumption => 128 => 128 opcache.opt_debug_level => 0 => 0 opcache.optimization_level => 0x7FFEBFFF => 0x7FFEBFFF opcache.preferred_memory_model => no value => no value opcache.preload => no value => no value opcache.preload_user => no value => no value opcache.protect_memory => Off => Off opcache.record_warnings => Off => Off opcache.restrict_api => no value => no value opcache.revalidate_freq => 2 => 2 opcache.revalidate_path => Off => Off opcache.save_comments => On => On opcache.use_cwd => On => On opcache.validate_permission => Off => Off opcache.validate_root => Off => Off opcache.validate_timestamps => On => On zip Zip => enabled Zip version => 1.19.5 Libzip version => 1.8.0 BZIP2 compression => Yes XZ compression => No ZSTD compression => Yes AES-128 encryption => Yes AES-192 encryption => Yes AES-256 encryption => Yes zlib ZLib Support => enabled Stream Wrapper => compress.zlib:// Stream Filter => zlib.inflate, zlib.deflate Compiled Version => 1.2.11 Linked Version => 1.2.11 Directive => Local Value => Master Value zlib.output_compression => Off => Off zlib.output_compression_level => -1 => -1 zlib.output_handler => no value => no value Additional Modules Module Name Environment (省略) PHP Variables (省略) PHP License This program is free software; you can redistribute it and/or modify it under the terms of the PHP License as published by the PHP Group and included in the distribution in the file: LICENSE This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. If you did not receive a copy of the PHP license, or have any questions about PHP licensing, please contact license@php.net.