Bagaimana cara menginstal ekstensi php?

Selama konfigurasi awal server, salah satu langkah terpenting adalah penginstalan ekstensi PHP – yang diperlukan untuk sebagian besar CMS, termasuk WordPress, Magento, dan Laravel yang populer. Pada artikel ini, saya akan memberi tahu Anda skrip PHP mana yang harus diinstal dan bagaimana melakukannya melalui konsol. Kami akan menginstalnya di Ubuntu 20. 04, tetapi sintaks perintah yang dijelaskan di bawah ini dapat diadaptasi ke sistem Linux lainnya

Menginstal PHP7. 4 untuk Apache

Pengguna web server ini hanya perlu menjalankan dua perintah secara berurutan

sudo apt update
sudo apt install php libapache2-mod-php
sudo systemctl restart apache2

PHP 7. 4 Panduan Instalasi untuk Nginx

Server web ini tidak mendukung pemrosesan PHP secara langsung, sehingga memerlukan FastCGI - pengelola proses PHP–FPM agar berfungsi. Melalui konsol kami masuk

sudo apt update
sudo apt install php-fpm
systemctl status php7.4-fpm
_

Cara menginstal ekstensi PHP di Linux

Modul paket ini adalah pustaka yang dikompilasi yang memperluas fungsi dasar PHP. Mereka sering dibutuhkan untuk programmer dan webmaster untuk bekerja, karena mereka membantu mengimplementasikan banyak fitur menarik. Untuk menginstal paket, gunakan perintah

sudo apt install php-[extname]
  • php-mysql — diperlukan saat bekerja dengan database, paling sering disatukan dengan paket bahasa utama;
  • php-ctype — diperlukan jika terjadi kesalahan Fatal selama operasi. Panggil ke fungsi yang tidak terdefinisi ctype_digit() di /wp-admin/includes/file. php;
  • php-dom — terkadang diperlukan saat bekerja dengan hosting Windows, tetapi paling sering tidak dibutuhkan;
  • php-exif — diperlukan untuk bekerja dengan data meta foto;
  • php-gd — digunakan saat memproses gambar, sering dibutuhkan;
  • php-iconv — mengonversi string dari satu penyandian ke penyandian lainnya;
  • php-json — Dukungan JSON;
  • php-posix — digunakan di kelas WP_Filesystem_Direct
  • php-mbstring — diperlukan, diperlukan untuk pemrosesan string;
  • php-zip, php-zlib — berguna bagi mereka yang bekerja dengan arsip

Secara umum, daftar lengkap semua ekstensi PHP yang ada diperkirakan ratusan modul berbeda, yang sebagian besar sangat terspesialisasi dan digunakan oleh spesialis TI untuk mengoptimalkan tugas kerja.

Anda juga dapat menginstal ekstensi PHP melalui panel kontrol ISPmanager atau lainnya – di sana, di tab yang sesuai, Anda dapat mengunduh dan menginstal semua paket yang diperlukan tanpa konsol

Sedikit tentang PECL dan kesimpulannya

Saya juga harus menyebutkan repositori ekstensi asli untuk PHP yang ditulis dalam bahasa C. Mereka digunakan jika tidak mungkin menerapkan beberapa ide dalam PHP - misalnya, memuat ulang operator. Semua modul dalam repositori PECL dikembangkan sesuai ketat dengan standar pengkodean yang diadopsi oleh tim pengembangan PHP, sehingga kualitas pekerjaan mereka tidak boleh membuat Anda ragu.

Jika Anda masih memiliki pertanyaan tentang cara memasang dan menghubungkan ekstensi PHP ke server Anda, hubungi pakar kami melalui Livechat atau telepon. Kami akan menjawab semua pertanyaan Anda dalam kompetensi kami

Repositori ini berisi skrip yang dapat digunakan untuk menginstal ekstensi PHP dengan mudah di dalam image PHP Docker resmi

Skrip akan menginstal semua paket APT/APK yang diperlukan;

Gambar buruh pelabuhan yang didukung adalah semua versi Alpine/Debian, kecuali untuk PHP 5. 5 di mana kami hanya mendukung Debian 8 (jessie) (yaitu,

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
4,
FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
5,
FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
6,
FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
7,
FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
8). Lihat juga catatan di bagian

Penggunaan

Anda memiliki dua cara untuk menggunakan skrip ini dalam

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
9s Anda. Anda dapat mengunduh skrip dengan cepat, atau Anda dapat mengambilnya dari gambar
FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
0 Docker Hub. Dengan metode pertama Anda yakin akan selalu mendapatkan skrip versi terbaru, dengan metode kedua prosesnya lebih cepat karena Anda akan menggunakan gambar lokal

Misalnya, berikut beberapa

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
9 yang memasang ekstensi GD dan xdebug PHP

Mengunduh skrip dengan cepat

Dengan Dockerfile

FROM php:7.2-cli

ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/

RUN chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug

Dengan ikal

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug

Dengan eksekusi langsung dari curl

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache

Menyalin skrip dari gambar Docker

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
_

Alternatif yang tidak memperbesar ukuran gambar dengan alat tersebut

RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl

Peringatan . dengan menggunakan metode ini, Anda dapat menggunakan versi lama dari gambar

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
0.

Untuk memastikan instruksi

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
_3 menggunakan versi terbaru, Anda dapat menjalankannya

docker pull mlocati/php-extension-installer

Menginstal versi ekstensi tertentu

Cukup tambahkan

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
_4 ke nama modul. Sebagai contoh

install-php-extensions xdebug-2.9.7

Skrip juga mendukung penyelesaian versi yang kompatibel dengan mengawali versi dengan tanda sisipan (

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
5). Sebagai contoh

# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8

Ekstensi versi pra-rilis yang tersedia di

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
6 dapat disiapkan dengan menambahkan akhiran nama ekstensi dengan statusnya i. e.
FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
7,
FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
8,
FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
9,
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
0,
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
1 atau
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
2. Sebagai contoh

install-php-extensions xdebug-beta

TIP. Ketika versi terbaru yang tersedia di

FROM php:7.2-cli

COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/

RUN install-php-extensions gd xdebug
_6 tidak stabil, dan Anda ingin mempertahankan versi stabil terakhir, paksakan dengan membubuhkan nama ekstensi dengan status
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
4. Sebagai contoh

install-php-extensions mongodb-stable

Menginstal dari kode sumber

Anda juga dapat menginstal ekstensi PHP dari kode sumber (asalkan dilengkapi dengan file

RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
5 atau
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
6)

Format yang diterima adalah

  • Versi pendek untuk repositori yang dihosting di GitHub
    Misalnya, untuk repositori GitHub php-memcached-dev/php-memcached, Anda cukup menulis

    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    0

  • URL yang menyediakan arsip yang berisi kode sumber
    Contoh

    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    1

  • Jalur absolut dari direktori lokal
    Contoh

    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    2

Memasang komposer

Anda juga dapat menginstal komposer, dan Anda juga dapat menentukan versi utamanya, atau versi lengkapnya

Contoh

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
3

Masalah dengan sertifikat Let's Encrypt

Sertifikat root CA dari Let's Encrypt berubah (detail lebih lanjut di sini)
Itu merusak distribusi linux lama, yaitu

  • Debian Jessie (8)
  • Peregangan Debian (9)
  • Alpine Linux 3. 7
  • Alpine Linux 3. 8

Skrip ini dapat memperbaiki masalah ini. cukup berikan

RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
_7 sebagai argumen

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
4

Ekstensi PHP yang didukung

EkstensiPHP 5. 5PHP 5. 6PHP 7. 0PHP 7. 1 PHP 7. 2 PHP 7. 3 PHP 7. 4PHP 8. 0PHP 8. 1 PHP 8. 2amqp✓✓✓✓✓✓✓✓✓apcu✓✓✓✓✓✓✓ pula

Jumlah ekstensi yang didukung. 129

PS. ekstensi PHP pra-instal dikecualikan dari daftar ini. Anda dapat mencantumkannya dengan perintah berikut (ubah

RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
8 untuk mencerminkan versi PHP yang Anda minati)

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
5

Konfigurasi

Anda dapat mengonfigurasi perilaku skrip, serta menyempurnakan beberapa ekstensi agar sesuai dengan kebutuhan Anda, dengan menggunakan variabel lingkungan

Ini sebuah contoh

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
6

Berikut daftar semua variabel lingkungan yang didukung

ExtensionVariabel lingkunganDeskripsi
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
9Secara default skrip akan menginstal dan mengaktifkan ekstensi
Jika Anda hanya ingin menginstalnya (tanpa mengaktifkannya), Anda dapat mengatur variabel lingkungan ini
Untuk mengaktifkan ekstensi di lain waktu Anda dapat menjalankan perintah
docker pull mlocati/php-extension-installer
0 (misalnya.
docker pull mlocati/php-extension-installer
_1)
Awas. menginstal beberapa ekstensi PHP mengharuskan ekstensi PHP lainnya sudah diaktifkan, jadi gunakan fitur ini dengan bijak.
docker pull mlocati/php-extension-installer
2Secara default skrip akan menghapus cache apt/apk/pear untuk menghemat ruang disk. Anda dapat menonaktifkannya dengan menyetel variabel lingkungan inilzf
docker pull mlocati/php-extension-installer
3Secara default
docker pull mlocati/php-extension-installer
4 mengkompilasi ekstensi
docker pull mlocati/php-extension-installer
5 untuk memilih kecepatan daripada ukuran; . Secara default kelas
docker pull mlocati/php-extension-installer
_7 didefinisikan di root namespace. Anda dapat menggunakan variabel lingkungan ini untuk menentukan custom namespacegd
docker pull mlocati/php-extension-installer
8Sejak PHP 8. 1, gd mendukung format AVIF. Mengaktifkannya memerlukan kompilasi libaom/libdav1d/libyuv/libavif di Debian dan Alpine 3. 14-, yang memakan waktu. Anda dapat menonaktifkan dukungan AVIF dengan menyetel variabel lingkungan ini di Debian dan Alpine 3. 14-oci8 & pdo_oci
docker pull mlocati/php-extension-installer
9Ekstensi PHP oci8 dan pdo_oci memerlukan Oracle Instant Client. Untuk menghemat ruang disk, kami menginstal versi Basic Lite. jika Anda ingin menginstal versi Basic (non-lite) cukup atur variabel lingkungan inihttp, intl, mongodb
install-php-extensions xdebug-2.9.7
0Beberapa ekstensi memerlukan perpustakaan ICU, gunakan tanda ini untuk menginstal perpustakaan ICU yang lebih kecil, tetapi hanya dalam bahasa Inggris, di Alpine 3. 16 dan selanjutnyapspell
install-php-extensions xdebug-2.9.7
1Konfigurasikan bahasa yang akan disediakan (misalnya.
install-php-extensions xdebug-2.9.7
2). Jika dihilangkan, kita anggap ________20______3

Persyaratan khusus

Beberapa ekstensi memiliki persyaratan khusus

ExtensionRequirementsddtrace• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
6 docker imagesgeos• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 docker images
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_9 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
0 image dockerlz4Tidak tersedia di
install-php-extensions xdebug-2.9.7
6 image dockermemprof• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_9 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
0 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
6 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
7 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
8 image docker
• Tidak tersedia di
# Install the most recent xdebug 2.x version (for example 2.9.8)
install-php-extensions xdebug-^2
# Install the most recent xdebug 2.8.x version (for example 2.8.1)
install-php-extensions xdebug-^2.8
9 image docker
• Tidak tersedia di
install-php-extensions xdebug-beta
0 docker imagesparallelMembutuhkan image dengan PHP yang dikompilasi dengan thread-safety diaktifkan (
install-php-extensions xdebug-beta
1)parleTidak tersedia di
install-php-extensions xdebug-2.9.7
6 docker imagespdo_sqlsrv• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 docker images
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di arsitektur ARMspthreadsMemerlukan gambar dengan PHP yang dikompilasi dengan thread-safety diaktifkan (
install-php-extensions xdebug-beta
1)simdjson• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 gambar buruh pelabuhan
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_6 image docker
• Tidak tersedia di
install-php-extensions xdebug-beta
9 docker imagesnatriumTidak tersedia di
install-php-extensions xdebug-2.9.7
6 docker imagessqlsrv• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 docker images
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions mongodb-stable
3 image docker
• Tidak tersedia di
install-php-extensions mongodb-stable
4 image docker
• Tidak tersedia di arsitektur ARMtensor• Tidak tersedia di
install-php-extensions xdebug-beta
0 image docker
• Tidak tersedia di
install-php-extensions mongodb-stable
6 docker imagesvips• Tidak tersedia di
install-php-extensions xdebug-2.9.7
4 docker images
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_5 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_9 image docker
• Tidak tersedia di
install-php-extensions xdebug-2.9.7
_6 image docker

Bagaimana saya tahu distribusi Linux mana yang saya gunakan?

Anda dapat menjalankan perintah ini

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
7

Sebagai contoh

  • untuk Debian 11 (Bullseye) Anda akan melihat

    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    8

  • untuk Alpine Linux 3. 14 Anda akan melihat

    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    _9

Tes

Saat mengirimkan permintaan penarikan, Tindakan GitHub dijalankan untuk memeriksa apakah ekstensi PHP yang terpengaruh benar-benar berfungsi (lihat di bawah)

Selain itu, kami juga memeriksa bahwa versi ekstensi baru di repositori PECL akan tetap berfungsi. Ini dilakukan secara terjadwal dengan Tindakan GitHub lainnya
Jika terjadi kegagalan, pesan dikirim ke Saluran Telegram
Jangan ragu untuk berlangganan untuk menerima pemberitahuan kegagalan

Bagaimana berkontribusi

Memformat kode

Sebelum mengirimkan permintaan penarikan apa pun, Anda harus menjalankan skrip

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
01 di direktori
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
02 (atau
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
03 di Windows)

Jika Anda tidak melakukannya, dan jika ada kesalahan gaya pengkodean, Anda akan melihat bahwa

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
04 dan/atau
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
05 Tindakan GitHub akan gagal

Errornya akan seperti ini

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
0

Jadi, Anda harus memperbaiki garis yang disorot (yang ada di

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
06) dengan mengganti apa yang Anda lihat setelah
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
07 dengan apa yang Anda lihat setelah
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
08

Menambahkan dukungan ke ekstensi PHP baru?

  1. ubah skrip
    docker pull mlocati/php-extension-installer
    _4
  2. perbarui file
    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    _10, tambahkan baris baru dengan pegangan ekstensi dan daftar versi PHP yang didukung
  3. jika ekstensi membutuhkan gambar ZTS
    tambahkan baris baru ke file
    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    _11, dengan pegangan ekstensi diikuti dengan spasi dan
    install-php-extensions xdebug-beta
    1

Lihat permintaan tarik ini sebagai contoh

Mengubah versi PHP yang didukung untuk ekstensi PHP yang sudah didukung?

  1. ubah skrip
    docker pull mlocati/php-extension-installer
    _4
  2. perbarui file
    FROM php:7.2-cli
    
    RUN curl -sSLf \
            -o /usr/local/bin/install-php-extensions \
            https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
        chmod +x /usr/local/bin/install-php-extensions && \
        install-php-extensions gd xdebug
    _10, tambahkan versi PHP baru ke baris yang ada sesuai dengan ekstensi yang diperbarui

Lihat permintaan tarik ini sebagai contoh

Meningkatkan kode untuk ekstensi yang sudah didukung?

Jika Anda mengubah beberapa kode yang memengaruhi satu atau lebih ekstensi, harap tambahkan baris dengan

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
15 ke pesan salah satu pull request yang dilakukan. Dengan begitu, pekerjaan pengujian akan memeriksa ekstensi meskipun Anda tidak menyentuh file
FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
10

Berikut adalah contoh pesan komit

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
1

Pengujian hanya memeriksa penginstalan satu ekstensi PHP dalam satu waktu. Jika Anda ingin menguji pemasangan lebih banyak ekstensi PHP secara bersamaan, gunakan pesan komit seperti ini

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
2

Jika pull request Anda berisi beberapa commit, kami akan mencentang "Test. " pesan dari setiap komit. Jika Anda ingin berhenti mengurai komit berikutnya, tambahkan

FROM php:7.2-cli

RUN curl -sSLf \
        -o /usr/local/bin/install-php-extensions \
        https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions gd xdebug
17 di "Test. "baris, misalnya

FROM php:8.2-cli

RUN curl -sSL https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions -o - | sh -s \
      gd \
      gmp \
      exif \
      opcache
_3

Lihat permintaan tarik ini sebagai contoh

Persyaratan PHP dan opsi konfigurasi

Ekstensi PHP yang dipublikasikan di arsip PECL berisi file

RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
5 (atau
RUN  --mount=type=bind,from=mlocati/php-extension-installer:1.5,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
      install-php-extensions pcntl
6) yang menjelaskan versi PHP yang didukung dan opsi yang dapat digunakan untuk mengompilasinya. Saat kami menambahkan dukungan untuk ekstensi PHP baru, dan saat versi baru ekstensi PHP dirilis, kami harus memeriksa kendala tersebut

Ini tugas yang agak membosankan, jadi saya mengembangkan sebuah proyek yang memungkinkan Anda dengan mudah memeriksa kendala tersebut. Anda dapat menemukannya di https. //mlocati. github. io/pecl-info (di sini Anda dapat menemukan kode sumbernya)

Bagaimana cara menginstal ekstensi PHP secara manual?

Instal ekstensi menggunakan pengelola paket Pecl .
Instal paket. CentOS. .
Install the extension: /opt//bin/pecl install memcache. .. .
Connect the extension for a required PHP version: echo extension= >> /opt//etc/php.d/.ini..

Bagaimana cara menginstal ekstensi file PHP?

Cara paling umum untuk memuat ekstensi PHP adalah memasukkannya ke dalam php Anda. file konfigurasi ini . Harap perhatikan bahwa banyak ekstensi sudah ada di php Anda. ini dan Anda hanya perlu menghapus titik koma untuk mengaktifkannya.

Bagaimana cara mengaktifkan dan memasang ekstensi PHP?

Untuk mengaktifkan PHP Extension intl , ikuti Langkah-langkahnya. .
Buka xampp/php/php.ini. file ini di editor apa pun
Cari ";extension=php_intl. dll"
silakan hapus titik koma awal ( ; ) Seperti. ;ekstensi=php_intl. dll. ke. ekstensi = php_intl. dll
Simpan file xampp/php/php. file ini
Mulai ulang xampp/wamp Anda

Bagaimana cara menginstal ekstensi PHP di Windows?

Langkah 1. Klik tombol Config lalu pilih php. ini untuk instalasi PHP Anda, dan buka di editor teks. Langkah 2. Temukan baris yang menentukan lokasi baris "ekstensi =". Langkah 3. Cari ekstensi yang ingin Anda instal dan hapus titik koma sebelum baris tersebut