# Panduan Web

# Menambah versi PHP pada instalasi XAMPP di Windows

Terkadang kita kesulitan untuk mengatasi program PHP yang berjalan pada versi nan berbeda-beda, sebahagian orang menginstall XAMPP baru untuk memecahkan masalah tersebut, tapi pada tutorial ini akan diperlihatkan cara memecahkan masalah tersebut dengan menambahkan versi PHP nya saja pada instalasi XAMPP.

### 1. Persiapan

Sebelum mulai, pastikan instalasi XAMPP tidak ada masalah atau bisa berjalan dengan baik. Silahkan uji instalasi XAMPP nya dengan mencoba menjalankannya

### 2. Download PHP

Download PHP pada alamat url berikut:

[https://windows.php.net/downloads/releases/](https://windows.php.net/downloads/releases/)

Pada halaman web tersebut terdapat banyak pilihan versi PHP yang bisa didownload, jika kamu mencari PHP yang versi lama, silahkan masuk ke dalam folder /archive

[https://windows.php.net/downloads/releases/archives/](https://windows.php.net/downloads/releases/archives/)

Didalamnya terdapat versi PHP mulai dari v5.2.10, yang merupakan versi terlama yang dapat didownload. File yang harus didownload untuk ditambahkan ke dalam instalasi XAMPP harus lah berformat nama file seperti contoh berikut ini:

```
php-7.4.33-nts-Win32-vc15-x64.zip
php-5.2.10-nts-Win32-VC6-x86.zip
```

> Apa arti dari NTS dan TS dalam versi PHP?
> 
> TS adalah singkatan dari multithread capable builds, sedangkan NTS adalah singkatan dari single thread only builds. Artinya, versi PHP TS mendukung pemrosesan CPU secara multithread, yang memungkinkan beberapa thread berjalan secara paralel. Ini meningkatkan efisiensi dalam lingkungan dengan banyak permintaan simultan. Sebaliknya, versi PHP NTS hanya mendukung pemrosesan single thread, di mana setiap permintaan ditangani satu per satu oleh satu thread. Ini dapat menghasilkan kinerja yang lebih cepat dalam kondisi tertentu karena tidak ada overhead dari mekanisme penguncian, tetapi mungkin tidak cocok untuk lingkungan dengan permintaan simultan yang tinggi. Pemilihan antara TS dan NTS harus disesuaikan dengan server web yang digunakan dan kebutuhan spesifik dari aplikasi yang dijalankan

### 3. Menginstall PHP 5.4

untuk contoh pemasanagan disini kita contohkan dengan menginstall PHP 5.4, karena yang dipasang adalah 5.4 maka terlebih dahulu download file php v 5.4 dengan format zip [disini](https://windows.php.net/downloads/releases/archives/). Pilih file dengan nama php-5.4.17-Win32-VC9-x86.zip.

### 4. Buat folder baru di XAMPP

Buat sebuah folder baru pada xampp dengan nama **php54**

### 5. Atur PHP Configuration File

Pada directory PHP yang telah didownload, terdapat file yang bernama **php.ini.development** dan **php.ini.production** yang merupakan file konfigurasi untuk PHP. Gunakanlah **php.ini.development** jika PHP akan digunakan untuk mengembangkan sebuah program, dan gunakanlah **php.ini.production** ketika program sudah selesai dibangun dan siap untuk dijalankan. Untuk menggunakan salah satunya adalah dengan cara mengubah nama dari filenya, contoh:

```
php.ini.development -> php.ini
```

Secara bawaan konfigurasi yang disediakan belum mengaktifkan ekstensi php dimana beberapa fitur php akan mati. Untuk mengaktifkannya, silahkan buka file **php.ini,** Lanjut buka file php.ini menggunakan notepad++ kemudian cari code ; **extension\_dir =** **"ext"**. Hilangkan tanda **;** diawal sehingga baris ini bisa aktif.

### 6. Atur httpd-xampp.conf 

buka file D:\\xampp\\apache\\conf\\extra\\httpd-xampp.conf, lalu tambahkan script berikut di bagian paling bawah. Pastikan partisi tempat penyimpanan sama dengan contoh script, atau bisa disesuaikan dengan partisi tempat penyimpanan folder XAMPP masing-masing.

```
ScriptAlias /php54/ "D:/xampp/php54/"
<Directory "D:/xampp/php54">
    AllowOverride None
    Options None
    Require all denied
    <Files "php-cgi.exe">
        Require all granted
    </Files>
</Directory>
Listen 54
<VirtualHost *:54>
    UnsetEnv PHPRC
    <FilesMatch "\.php$">
        php_flag engine off
        SetHandler application/x-httpd-php54
        Action application/x-httpd-php54 "/php54/php-cgi.exe"
    </FilesMatch>
</VirtualHost>
```

Pengaturan diatas merupakan pengaturan untuk menentukan di port mana versi PHP ini akan dijalankan. Port yang digunakan untuk menjalakan php v5.4 yang telah terpasang adalah "54" (port ini dapat diatur sesuai keinginan pengguna).

### 7. Jalankan XAMPP

Jalankan xampp seperti biasa dengan start **apache** dan **mysql**. Untuk menggunakan versi php versi 5.4 yang telah dipasang tambahkan port pada link, sehingga menjadi **[http://localhost:54/dashboard/](http://localhost:54/dashboard/),** jika muncul gambar seperti dibawah ini maka PHP versi 5.4 sukses di tambahkan

[![image.png](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-08/scaled-1680-/image.png)](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-08/image.png)

Jadi ketika hendak menjalankan aplikasi dengan php bawahan masuk dengan link **localhost/nama\_web** lalu kitaka hendak menggunakan versi 5.4 yang telah dipasang masuk dengan link **localhost:54/nama\_web.**

# Kirim E-Mail dari Laravel

#### Persiapan

1. Sebuah project Laravel
2. Akun [mailtrap.io](https://mailtrap.io/) untuk pengujian
3. Code Editor/Text Editor

#### Konfigurasi Awal

1. Login ke akun [mailtrap.io](https://mailtrap.io/) dan dapatkan konfigurasi mail server.
2. Pergi ke menu Email Testing lalu ke My Inbox  
    [![image.png](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/scaled-1680-/image.png)](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/image.png)
3. Pada halaman inbox, copy configurasi ke .env Laravel  
    ```php
    MAIL_MAILER=smtp
    MAIL_HOST=sandbox.smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=120e6bdef938d3
    MAIL_PASSWORD=********52b8
    ```
    
    Untuk password dapat dilihat jika menekan tombol: <span style="background-color: rgb(0, 0, 0);">[![image.png](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/scaled-1680-/pjXimage.png)](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/pjXimage.png)</span>  
      
    [![image.png](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/scaled-1680-/CVvimage.png)](https://lib.mediatamaweb.co.id/uploads/images/gallery/2024-11/CVvimage.png)
4. Untuk mengirimkan Email pada Laravel, buat sebuah Controller (contoh: **ContohEmailController**) dan sebuah View (contoh: **mail.blade.php**).
5. Berikut merupakan kode untuk mengirim Email menggunakan konfigurasi dari .env  
    ```php
    Mail::send('mail', [ // --> mail.blade.php
        'data_1' => "Ini data 1",
        'data_2' => "Ini data 2",
    ], function ($message) {
        $message->to("email_tujuan@example.com");
        $message->subject('Ini subject dari emailnya');
    });
    ```
6. Class Mail diatas datang dari:  
    ```php
    use Illuminate\Support\Facades\Mail;
    ```
7. Pada view, **$data\_1** dan **$data\_2** bisa digunakan untuk membangun tampilan dari emailnya.
8. Selesai