Ketika Aplikasi Membutuhkan PHP Dom

By | 31 Januari 2022

MWI – Terkadang ada error yang terjadi dan kita eh saya tidak mengetahui solusinya, misal aplikasi yang dibangun membutuh paket bernama dom, dengan pesan kesalahan (error) seperti ini Install or enable PHP’s dom extension, ternyata solusinya sangat mudah. Pesan lengkap erro yg muncul seperti ini

composer create-project laravel/laravel laravel9nextjs
Creating a "laravel/laravel" project at "./laravel9nextjs"
Installing laravel/laravel (v9.0.0)
  - Installing laravel/laravel (v9.0.0): Extracting archive
Created project in /var/www/html/laravel/laravel9nextjs
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - phpunit/phpunit[9.5.10, ..., 9.5.x-dev] require ext-dom * -> it is missing from your system. Install or enable PHP's dom extension.
    - Root composer.json requires phpunit/phpunit ^9.5.10 -> satisfiable by phpunit/phpunit[9.5.10, ..., 9.5.x-dev].

To enable extensions, verify that they are enabled in your .ini files:
    - /etc/php/8.1/cli/php.ini
    - /etc/php/8.1/cli/conf.d/10-opcache.ini
    - /etc/php/8.1/cli/conf.d/10-pdo.ini
    - /etc/php/8.1/cli/conf.d/20-calendar.ini
    - /etc/php/8.1/cli/conf.d/20-ctype.ini
    - /etc/php/8.1/cli/conf.d/20-exif.ini
    - /etc/php/8.1/cli/conf.d/20-ffi.ini
    - /etc/php/8.1/cli/conf.d/20-fileinfo.ini
    - /etc/php/8.1/cli/conf.d/20-ftp.ini
    - /etc/php/8.1/cli/conf.d/20-gettext.ini
    - /etc/php/8.1/cli/conf.d/20-iconv.ini
    - /etc/php/8.1/cli/conf.d/20-mbstring.ini
    - /etc/php/8.1/cli/conf.d/20-phar.ini
    - /etc/php/8.1/cli/conf.d/20-posix.ini
    - /etc/php/8.1/cli/conf.d/20-readline.ini
    - /etc/php/8.1/cli/conf.d/20-shmop.ini
    - /etc/php/8.1/cli/conf.d/20-sockets.ini
    - /etc/php/8.1/cli/conf.d/20-sysvmsg.ini
    - /etc/php/8.1/cli/conf.d/20-sysvsem.ini
    - /etc/php/8.1/cli/conf.d/20-sysvshm.ini
    - /etc/php/8.1/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.

Solusinya cukup install paket php yang bernama xml, php-xml lengkap nama paketnya. Perintah lengkapnya adalah

sudo apt-get update
sudo apt install php-xml

dikasus saya ternyata butuh juga paket lain, karena belum terinstall, yaitu mbstring dan curl, maka cara installnya adalah:

sudo apt-get install php-mbstring
sudo apt-get install php-curl

Tara… selesai, jangan lupa unutk restart apache dan dan jika diperlukan update composer dan ulangi perintah dikerjakan, dalam kasus saya hapus dahulu folder yang terbentuk dan ulangi perintahnya menjadi

sudo systemctl restart apache2
rm -rf laravel9nextjs
composer create-project laravel/laravel laravel9nextjs

Dan kali ini selesai beneran. NB: ini sedang belajar Laravel 9 yang release baru kemarin di 8 Februari 2022, eh artikel ini mau di masukan ke akhir Januri 2022 yah. Jangan lupa update dahulu PHP ke php versi 8.1.2, contekan ada disini sekaligus pindah antar versi dari PHP, sesuaikan karena versi terbaru ketika artikel ini ditulis adalah php8.1.2 sedangkan diartikel tersebtu masih php8.0, cukup ganti anggka 0 jadi 1 menjadi php8.1.

Demikian semoga bermanfaat dan terima kasih. Salam dari sahabatmu ms. (ms)

Bahan Bacaan: StackOverflow

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.