Seperti apa CodeIgniter 4?

Sangat lama sudah (rasanya) saya tidak membuat postingan tentang CodeIgniter (CI). Dan saat saya iseng-iseng membuka post di facebook isinya tentang CI 4. Waktu itu tahun 2011 dimana saya mulai membuat web dengan CI 4. Beragam module (untuk saya pribadi, maaf) sudah saya buat, berbagai metode dan berbagai web sudah saya buat menggunakan CI. Tapi kali ini sepertinya versi CI yang paling kontroversial. Betapa tidak, pengurus CI yang tidak lain adalah BCIT (https://github.com/bcit-ci/) mengininkan upgrade yang bisa dibilang extreme dan kemungkinan tidak akan bisa backward compatibility dengan versi sebelumnya.

Selain itu sebagian besar pecinta CI tidak mau CI jadi seperti Laravel (L5) dengan alasan Laravel ribet, berat or whatever… Continue reading Seperti apa CodeIgniter 4?

PSR-7 File Upload dengan Slim Framework

Pada artikel sebelumnya saya sempat membahas tenang upload file di Slim Framework 3 menggunakan package dari codeguy/upload. Well, tutorial yang saya buat sebelumnya memang tidak salah, tapi ada yang lebih mudah, yaitu menggunakan Response class bawaan Slim Framework itu sendiri.

Scroll ke bawah untuk langsung ke tutorial: Continue reading PSR-7 File Upload dengan Slim Framework

File Upload pada Slim Framework 3

Pada artikel sebelumnya, kita telah membahas Cross Site Request Forgery (CSRF) Security pada Slim Framework 3, kali ini kita akan membuat upload file sederhana dengan Slim Framework.

Sebelum melanjutkan, saya harap Anda sudah membaca artikel Instalasi Slim Framework.

Langkah awal adalah menginstall package Slim 3 Skeleton dari akrabat.  Continue reading File Upload pada Slim Framework 3

Cross Site Request Forgery (CSRF) Security pada Slim Framework 3

Dari sisi keamanan, saya akan membahas tentang CSRF (baca: si-surf) pada Slim Framework 3 (Slim). Saat installasi Slim, tidak ada package security untuk CSRF, akan tetapi ada pada repo terpisah di github.

Tulisan ini adalah tulisan ke sekian dari seri Slim, ada baiknya Anda membaca tulisan saya yang sebelumnya seperti Installasi Slim Framework 3.

Hal yang pertama kita lakukan adalah menginstall skeleton Slim dari akrabat. Continue reading Cross Site Request Forgery (CSRF) Security pada Slim Framework 3

Membuat RESTful Web Service dengan Slim Framework 3

Dalam pembuatan sebuah aplikasi, terutama aplikasi mobile, seorang back-end developer tentu sudah tidak asing lagi untuk membuat RESTful web service. Kali ini saya akan membuat tutorial untuk membuat RESTful web service dengan Slim Framework 3.

Install Packages

Package yang diperlukan adalah sebagai berikut:

  1. akrabat/slim3-skeleton;
    Kita akan menggunakan skeleton sehingga tidak perlu untuk membuat code dari awal. Jalan ini pada terminal/cmd untuk menginstall package:
    composer create-project -n -s dev akrabat/slim3-skeleton folder-project
  2. illuminate/database
    Database komponen dari Laravel sangat powerful. Jalan ini pada terminal/cmd untuk menginstall package:
    composer require illuminate/database

Continue reading Membuat RESTful Web Service dengan Slim Framework 3

Database Package pada Slim Framework 3

Masih di Slim Framework 3. Sebagai selingan, Slim Framework 3 stable telah
dirilis. Lihat postingannya di sini.

Slim Framework 3 secara default tidak menyediakan database/model packages. Slim dengan bebas mengizinkan kita untuk memilih database package. Kali ini saya akan menggunakan Illuminate/Database package dari Laravel komponen. Continue reading Database Package pada Slim Framework 3

Middleware Pada Slim Framework 3

Beberapa pembahasan tentang Slim 3 telah dibahas di web ini.  Kali ini saya akan membahas tentang middleware.

Artikel ini menggunakan file dari project sebelumnya yaitu Dependency Injection Container pada Slim Framework 3. Pastikan Anda sudah membaca artikel tersebut sebelumnya. Continue reading Middleware Pada Slim Framework 3

Dependency Injection Container pada Slim Framework 3

Sebelumnya saya sudah membahas tentang installasi Slim Framework 3 (untuk selanjutnya hanya akan disebut dengan Slim) dan juga mudahnya routing pada Slim. Sebetulnya saya akan membahas tentang Midlleware, tapi karena ada yang lebih penting dari Middleware, jadi saya tunda sementara.

Kali ini saya menuliskan tenang Dependency Injection Container (DIC) pada Slim. Jika Anda pertama kali mendengar DIC, Anda sangat disarankan untuk mengerti konsep DIC terlebih dahulu. Artikel yang saya ajurkan adalah dari PHP: The Right Way .

Dependency injection is a software design pattern that allows the removal of hard-coded dependencies and makes it possible to change them, whether at run-time or compile-time. – Wikipedia

Continue reading Dependency Injection Container pada Slim Framework 3

Router pada Slim Framework 3

Sebelumnya saya sudah membahas tentang installasi Slim Fw3, dan sekarang waktunya kita membahas tentang routing pada Slim Fw3.

Router Slim Framework 3 dibangun berdasarkan nikic/fastroute karena package tersebut cepat dan stabil. Slim Framework 3 menyediakan banyak jenis request method diantaranya GET, POST, PUT, DELETE, OPTION, PATCH.

Masing-masing request method dalam router memerlukan 2 argument yaitu route pattern dan route call back. Contoh seperti di bawah ini: Continue reading Router pada Slim Framework 3

php5-cli pada Ubuntu

Ketika saya menginstall package lewat composer, beberapa kali saya tidak meet requirement dengan package tersebut. Entah itu karena kurang install php-curl, php-imagic, php-gd dan lain-lain. Dan kali in yang paling parah, yaitu versi php yang tidak sesuai dengan versi PHP pada xampp.

Saat itu saya langsung mengecek versi PHP pada CLI, dengan command seperti di bawah ini:

Terlihat disana versi PHP pada CLI adalah 5.9.9, sedangan requirement 5.6.x

Solusinya adalah, saya harus menggunakan CLI bawaan dari xampp. Caranya ada membuat symbolic link untuk php cli.

Pada /opt/lampp/bin/php, sesuaikan dengan installasi folder xampp.

Dan….

Saya sudah bisa menginstall package yang saya perlukan lewat composer