Cara mengaktifkan ekstensi intl phps

Ekstensi Internasionalisasi PHP digunakan di hampir semua kerangka kerja modern. Ekstensi ini berguna untuk memformat mata uang, angka, dan tanggal/waktu serta pengumpulan yang sesuai dengan UCA, untuk pemformatan pesan dan normalisasi teks. dll.

Show

1 – Buka [xampp_folder_path]/php/php. ini untuk mengedit

2 – Cari – ekstensi = php_intl. dll

  ;extension=php_intl.dll

dan batalkan komentar pada baris dengan menghapus titik koma

  extension=php_intl.dll
_

3 – simpan file dan mulai ulang Apache

Saya harap Anda menyukai Posting ini, Silakan berkomentar di bawah ini, saran dan masalah Anda jika Anda hadapi - kami di sini untuk menyelesaikan masalah Anda

Ekstensi Internasionalisasi (Intl) adalah pembungkus perpustakaan ICU, kumpulan perpustakaan C/C++ dan Java yang menyediakan dukungan Unicode dan Globalisasi untuk aplikasi perangkat lunak. Itu cenderung mengikuti API ICU sehingga orang yang memiliki pengalaman bekerja dengan ICU baik di C/C++ atau Java dapat dengan mudah menggunakan API PHP

Paket/kerangka kerja/perpustakaan/skrip PHP yang kami gunakan mungkin memerlukan ekstensi PHP yang berbeda. Dalam hal ini ekstensi Intl diperlukan untuk bekerja dengan menggunakan Fungsi Internasionalisasi

Apa itu Internasionalisasi?

Punya salah satu dari pesan kesalahan ini?

  • Zend InputFilter membutuhkan ekstensi PHP intl
  • Intl ekstensi PHP yang diminta tidak ada di sistem Anda

 

Ini terjadi karena ekstensi PHP Intl tidak diinstal atau diaktifkan

Bagian dari tutorial ini juga bisa menjadi panduan untuk menginstal atau mengaktifkan ekstensi lainnya

Apa itu PHP Intl?

Ekstensi internasionalisasi (selanjutnya disebut sebagai Intl) adalah pembungkus untuk » perpustakaan ICU, memungkinkan pemrogram PHP untuk melakukan berbagai operasi sadar-lokal termasuk namun tidak terbatas pada pemformatan, transliterasi, konversi penyandian, operasi kalender

Sumber. Dokumentasi PHP

Ekstensi ini dapat dipasang menggunakan versi bundel mulai dari PHP 5. 3. 0, atau sebagai ekstensi PECL pada PHP 5. 2. 0. Dengan kata lain, ada dua metode untuk memasang ekstensi intl

Sumber. Dokumentasi PHP

Sebab

Jika Anda telah menginstal versi PHP yang tidak dibundel, ekstensi tidak diinstal di sistem. (kecuali Anda telah menginstalnya secara terpisah)

Jika Anda memiliki versi paket PHP, ekstensi mungkin sudah ada tetapi tidak diaktifkan

 

Solusi

Untuk Server berbasis Linux (dengan asumsi Anda memiliki akses root)

  • Pastikan php_intl. jadi file ada di dalam direktori ekstensi php Anda, temukan direktori ekstensi dengan
    • menggunakan phpinfo()
    • menjalankan perintah ini. php -r "echo ini_get('extension_dir');"
    • (catatan. kedua opsi mendapatkan extension_dir langsung dari konfigurasi runtime PHP)
  • Jika file tersebut ada
    • cari file konfigurasi (php. ini, biasanya /etc/php. ini) dan membukanya
    • Pastikan baris “extension=php_intl. jadi” ada dan tidak dikomentari
    • Mulai ulang server web (biasanya sudo service httpd restart)
    • Periksa apakah ekstensi diaktifkan menggunakan phpinfo()
  • Jika file tidak ada
    • Periksa versi php Anda dengan menjalankan perintah “php -v”.
    • Untuk PHP 5 instal paket php-intl menggunakan manajer paket Anda –
      • Paling umum. apt-get install php-intl (untuk linux berbasis ubuntu) atau yum install php-intl (untuk CentOS)
    • Untuk PHP 7, instal php7. x-intl (bergantung pada versi php Anda)
    • Ulangi langkah-langkah untuk kasus di mana file tersebut ada

Untuk proyek yang dihosting di platform hosting bersama, Anda harus meminta penyedia hosting Anda untuk menginstal/mengaktifkan ekstensi PHP Intl

Jika ICU Anda dipasang ke direktori non-standar maka Anda mungkin ingin menentukan lokasinya di LD_LIBRARY_PATH variabel lingkungan sehingga tautan dinamis dapat menemukannya

$ ekspor LD_LIBRARY_PATH=/opt/icu/lib

Jika tidak, jika PHP dan ICU diinstal ke lokasi defaultnya, maka opsi tambahan untuk mengonfigurasi tidak diperlukan

Saat menginstall framework php seperti codeigniter 4 adakalanya kita menemukan kendala diantaranya ekstensi intl yang hilang. Untuk mengatasi hal tersebut maka kita harus mengaktifkan ekstensi intl dengan cara

  1. Buka panel kontrol xampp
  2. Klik config pada apache
  3. Pilih php. ini dan file akan terbuka di notepad

4. Lalu cari (CTRL+F) di notepad “;extension=intl” (tanpa tanda petik) dan hapus titik koma atau titik koma

Saya mengalami masalah yang sama dengan ekstensi ldap, intl, curl php. Saya telah memecahkan masalah tersebut dengan cara berikut

Pertama-tama Anda harus memeriksa apakah ekstensi ini telah diaktifkan di php. ini dengan menghapus titik koma (;) di depan baris berikut

;extension=php_intl.dll
;extension=php_ldap.dll
;extension=php_curl.dll

Kedua, libeay32. dll, ibssh2. dll dan ssleay32. dll file harus dimuat oleh php dengan benar untuk memfungsikan ekstensi tersebut dengan benar. File dll ini diperlukan oleh beberapa ekstensi php (yaitu curl, ldap, intl dll). File-file ini umumnya berada di direktori instalasi php [untuk kasus saya ini adalah C. \php direktori]. Selain itu, agar ekstensi intl diaktifkan, Anda memerlukan beberapa file dll lain untuk dimuat oleh php dengan benar. Nama file-file ini dimulai dengan icu (yaitu icudt57. dll icuin57. dll dll untuk php versi 5. 6). Anda juga akan menemukan file-file ini di direktori instalasi utama php

Ada cara alternatif untuk memuat file-file ini dari httpd.conf Anda. conf (file konfigurasi apache) alih-alih menyalinnya ke direktori bin apache. Ini dapat dilakukan dengan menggunakan teknik berikut