web-dev-qa-db-ja.com

php ext-xmlを有効にしますか?

Composerを使用してSymfony 4プロジェクトを作成しようとすると、次のエラーが発生しました。

steve@laptop ~ $ php composer.phar create-project symfony/skeleton my-proj
Installing symfony/skeleton (v4.0.0)
  - Installing symfony/skeleton (v4.0.0): Loading from cache
Created project in my-proj
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - symfony/framework-bundle v4.0.1 requires ext-xml * -> the requested PHP extension xml is missing from your system.
    - symfony/framework-bundle v4.0.0 requires ext-xml * -> the requested PHP extension xml is missing from your system.
    - Installation request for symfony/framework-bundle ^4.0 -> satisfiable by symfony/framework-bundle[v4.0.0, v4.0.1].

  To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/7.2/cli/php.ini
    - /etc/php/7.2/cli/conf.d/10-opcache.ini
    - /etc/php/7.2/cli/conf.d/10-pdo.ini
    - /etc/php/7.2/cli/conf.d/20-calendar.ini
    - /etc/php/7.2/cli/conf.d/20-ctype.ini
    - /etc/php/7.2/cli/conf.d/20-exif.ini
    - /etc/php/7.2/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.2/cli/conf.d/20-ftp.ini
    - /etc/php/7.2/cli/conf.d/20-gettext.ini
    - /etc/php/7.2/cli/conf.d/20-iconv.ini
    - /etc/php/7.2/cli/conf.d/20-json.ini
    - /etc/php/7.2/cli/conf.d/20-phar.ini
    - /etc/php/7.2/cli/conf.d/20-posix.ini
    - /etc/php/7.2/cli/conf.d/20-readline.ini
    - /etc/php/7.2/cli/conf.d/20-shmop.ini
    - /etc/php/7.2/cli/conf.d/20-sockets.ini
    - /etc/php/7.2/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.2/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.2/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.2/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
steve@laptop ~ $ php --ini

    steve@laptop ~ $ php --version
        PHP 7.2.0-2+ubuntu16.04.1+deb.sury.org+2 (cli) (built: Dec  7 2017 20:14:31) ( NTS )
       Copyright (c) 1997-2017 The PHP Group
        Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies
        with Zend OPcache v7.2.0-2+ubuntu16.04.1+deb.sury.org+2, Copyright (c) 1999-2017, by Zend Technologies
    steve@laptop ~ $ Sudo apt-get install php-xml
        [Sudo] password for steve: 
        Reading package lists... Done
        Building dependency tree       
        Reading state information... Done
        php-xml is already the newest version (1:7.1+55+ubuntu16.04.1+deb.sury.org+1).
        0 to upgrade, 0 to newly install, 0 to remove and 253 not to upgrade.

Php.iniでext-xmlを検索して、コメントを解除して有効にするかどうかを確認しましたが、ext-xmlの記述は見つかりませんでした。自分が何をしているのかよく分からないので、他のどこも検索していません。

どんな助けでも大歓迎です、スティーブ

7
user3425506

最新バージョンのphpを取得するためにondrej/php ppaでubuntu 16.04を使用しているようです。この場合、パッケージ名は使用しているphpのバージョンと一致する必要があります。

apt-get install php7.2-xml

次のようなもので利用可能なさまざまなバージョンを見ることができます:

apt-cache search php | grep xml

構成によっては、インストールコマンドの前にSudoを付ける必要があります。

17
astrangeloop

PHPのすべてのバージョンを削除し、1つのバージョンのみをインストールします

0
rodrigo ortiz