Simfony: Membuat halaman pertama anda

Artikel ini sebenarnya menyalin dari dokumentasi Symfony (https://symfony.com) , bagaimana membuat halaman pertama pada symfony  framework ini. Ada 2 langkah yang harus kita buat .

  • Membuat ‘rute’ : Rute adalah URL (misal: / about) ke halaman anda dan menunjuk ke controller.
  • Membuat ‘controller’ : Controller adalah fungsi PHP yang anda tulis yang membangun halaman. Anda mengambil informasi permintaan masuk dan menggunakannya untuk membuat objek Respons Symfony, yang dapat menampung konten HTML, string JSON atau bahkan file biner seperti gambar atau PDF.

Sekarang buat sebuah file  ‘Controller’ pada folder : mysymfony1/src/AppBundle/Controller/  dengan nama file LuckyController.php , ingat ya pada saat install saya menamai folder proyeknya : mysymfony1  (anda sesuaikan sendiri).

<?php
// src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;</code>

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;

class LuckyController
{
/**
* @Route("/lucky/number")
*/

public function numberAction()
{
   $number = mt_rand(0, 100);

   return new Response(
      'Lucky number: '.$number.''
    );

}
}

Jalankan servernya  dan lihat pada browser anda.

http://localhost:8000/app_dev.php/lucky/number

Notes : Kalau di jalankan di web server : bisa dihilangkan  app_dev.php

Screenshot from 2017-06-30 10:59:49
Menjalankan PHP Server

Hasilnya.

symony2-02

Bagaimana agar bisa di tampilkan (views) menggunakan templates?

Symfony sudah menyediakan ‘twig templates’ untuk  membantu kita membuat web templates pada symfony. Kita hanya sedikit merubah ‘kode’ tadi dan penambahan file views  templates-nya.

Buatlah kode controller tadi seperti ini :

<?php
// src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
//penambahan baris baru ini
use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class LuckyController extends Controller
{
    /**
     * @Route("/lucky/number")
     */

    public function numberAction()
    {
        $number = mt_rand(0, 100);

        //penambahan fungsi $this->render
        return $this->render('lucky/number.html.twig', array(
            'number' => $number,
        ));
    }
}

Satu lagi siapkan templates-nya, untuk file templates kita simpan pada folder app/Resources/views/lucky   => buat sendiri folder lucky. Beri nama filenya : number.html.twig

{# app/Resources/views/lucky/number.html.twig #}
<h1>Your lucky number is {{ number }}</h1>

Jalankan di browser, hasilnya :

Screenshot from 2017-07-01 06:23:32
Hasil  tampilan di views templates

Berhasil.

Mohon maaf kalau artikelnya agak kaku atau mungkin ada yang kelewat, maklum saja sambil nulis sambil baca dokumentasi dan langsung mempraktekannya.

Catatan tambahan dari dokumentasi :

Memeriksa Struktur Proyek¶

Kabar baik! Anda telah bekerja di dalam dua direktori terpenting dalam proyek Anda:

  • app/
    Berisi hal-hal seperti konfigurasi dan template. Pada dasarnya, apapun yang bukan kode PHP ada disini.
  • src /
    Kode PHP anda tinggal disini
    99% dari waktu, Anda akan bekerja di src / (file PHP) atau aplikasi / (yang lainnya). Saat Anda terus membaca, Anda akan belajar apa yang bisa dilakukan di dalam masing-masing.

Lalu bagaimana dengan direktori lain dalam proyek ini?

  • bin/
    File bin / console yang terkenal tinggal di sini (dan file executable lainnya yang kurang penting).
  • tests /
    Tes otomatis (misalnya tes Unit) untuk aplikasi Anda tinggal di sini.
  • var /
    Di sinilah file yang dibuat secara otomatis disimpan, seperti file cache (var / cache /), log (var / logs /) dan sesi (var / sessions /).
  • vendor/
    Pustaka pihak ketiga (yaitu “vendor”) tinggal di sini! Ini didownload melalui manajer paket Composer.
  • web/
    Ini adalah akar dokumen untuk proyek Anda: letakkan file yang dapat diakses publik di sini (misalnya CSS, JS dan gambar).

Salam

Symfony PHP framework

Alhamdulillah, tiga hari berturut-turut bisa menulis artikel kembali tentang PHP framework dan hari ini saya coba menulis tentang instalasi Symfony framework ( https://symfony.com/ )

symfony-framework-01

Ada beberapa cara instalasi Symfony framework ini, diantaranya dengan ‘Symfony installer’ adalah executable PHP 5.4 yang kompatibel yang perlu diinstal di sistem Anda hanya satu kali.

Untuk pengguna Linux seperti saya, perintahnya  :

#Linux
$ sudo mkdir -p /usr/local/bin
$ sudo curl -LsS https://symfony.com/installer -o /usr/local/bin/symfony
$ sudo chmod a+x /usr/local/bin/symfony

Kalau berhasil akan terlihat file installer ‘symfony’ pada folder /usr/local/bin

Selanjutnya tinggal kita buat proyek baru, saya memberinamanya : mysymfony1 (silahkan sesuaikan sendiri )

$ symfony new mysymfony1

Hasilnya :

symfony-framework-03-new
Membuat proyek baru dengan Symfony  2.8

Apabila versi PHP yang ada di komputer kita tidak mendukung versi symfony terbaru maka akan keluar peringatan seperti ini:

symfony-framework-02-php-version
Symfony versi 3.3.2 , membutuhkan minimal PHP versi 5.5.9. Sementara di komputer saya hanya ada PHP versi 5.4.45. Jadi saya install Symfony versi 2.8

Symfony versi 2.8.22 berhasil di install.

  • Buka terminal lagi , pindah ke folder proyek yang baru di buat
  • Kemudian aktifkan php webserver-nya.

$ cd mysymfony1
$ php app/console server:start

Screenshot from 2017-06-30 10:59:49

Dari gambar di atas terlihat web server sudah aktif di localhost pada port 8000.

Buka browser kesayangan anda, ketik : http://localhost:8000

Screenshot from 2017-06-30 11:08:41

Berhasil di install dan di jalankan.

Salam.

Lithium PHP framework

Iseng lagi aja, mengisi kekosongan waktu. Sebenarnya bukan karena tidak ada kerjaan tetapi karena terlalu lama santai sehingga bingung mau mengerjakan apa. Akhirnya ‘ngoprek’ PHP framework aja deh.

Tentu saja, kalau dulu ‘ngoprek’ -nya tanpa di catat/tulis, sekarang saya coba di tulis  di blog ini aja. Siapa tahu ada  yang memerlukannya.

Dan sekarang pilihannya pada lithium (li3) framework.

Lithium (Li3) PHP framework
You asked for a better framework. Here it is.
li₃ is the fast, flexible and most RAD development framework for PHP

Seperti kebanyakan php framework yang kekinian, untuk dapat meng-install framework di sarankan menggunakan ‘composer‘ begitu juga dengan yang ini. Sebenarnya bisa saja secara manual seperti halnya php framework yang menggunakan Model, View, Controller (MVC) tetapi memang jadi lama deh.

Untuk dapat menginstall framework ini selain harus sudah terpasang ‘composer’ juga harus PHP versi 5.3++ ke atas. Agar bisa menjalankan server bawaan dari PHP itu sendiri. Dan satu lagi harus terhubung dengan internet, karena source code akan langsung di download.

Sudah siap? Mulai….

Buatlah proyek baru dengan  ‘Composer’ dan tentukan nama foldernya. Saya  menamai foldernya : mylithium. Sehingga perintahnya seperti di  bawah ini.

composer createproject preferdist unionofrad/framework mylithium

Setelah selesai hasilnya akan seperti gambar di bawah ini :

*Catatan : saya menggunakan OS Linux Debian Wheezy. Silahkan di sesuaikan dengan OS yang anda pakai.

composer-lithium

Setelah selesai membuat proyek baru, akan terlihat folder baru yang saya berinama: mylithium. Lihat gambar-gambar di bawah ini.

lithium framework
Isi folder baru: mylithium
lithium-02
Source code Lithium framework ada di folder : mylithium/libraries
lithium-03
Lokasi  index.php ada di mylithium/app/webroot
lithium-04
Lokasi model, controller, views dan source code yang kita buat ada di : mylithium/app

Kalau sudah terlihat seperti ini berarti kita sudah berhasil install lithium ke komputer sendiri, sekarang saatnya untuk mencobanya.

Ada yang berbeda ya? Biasanya kita simpan kode sumber di dokumen root server localhost, kalau ini bisa dimana saja. Kenapa? karena kita akan menjalankan server bawaan PHP sendiri dengan perintah seperti di bawah ini.

Ingat saya membuat folder rootnya di : mylithium/app/webroot sehingga perintahnya seperti ini.

php S 127.0.0.1:8080 t mylithium/app/webroot

Screenshot from 2017-06-29 07:22:46

Dan kita buka browsernya pada port 8080, seperti ini hasilnya.

Screenshot from 2017-06-29 07:24:43

Jika  hasilnya sama, berarti  kita berhasil install dan menjalankannya.

Salam

 

Fat-free PHP framework

Fat-free framework 
Kerangka kerja mikro PHP yang hebat namun mudah digunakan dirancang untuk membantu Anda membangun aplikasi web yang dinamis dan kuat – cepat!

Sepertinya fat-free framework ini bagus juga. Saatnya saya mencoba nih php framework, selain ukurannya yang kecil juga dokumentasi yang lengkap dan mudah di oprek nih.

Mulai…..

Fat-free framework (F3) versi 3.6 ini minimal menggunakan PHP versi 5.4 kalau pake yang di bawahnya akan ada kesalahan-kesalahan. Periksa dulu deh versi PHP nya nih, ternyata versi PHP nya masih cocok dengan yang saya install di laptop, siplah.

php-version

Selanjutnya dowload dulu source code-nya di https://fatfreeframework.com.

Setelah di download

  • Buka file zip-nya dan kemudian
  • Extract ke root document server localhost biasanya di /var/www/ (ubuntu/debian) atau di folder htdocs.
  • Ganti folder “fatfree-master” dengan nama “fatfree” agar lebih mudah pemanggilannya
  • Aktifkan server localhost-nya (bila sebelumnya belum aktif)
  • Buka browser anda dan ketik http://localhost/fatfree
  • Jika berhasil akan terlihat homepage fat-free seperti gambar di bawah ini, jika belum berhasil periksa  lagi langkah-langkahnya.

*Catatan : untuk  pengguna linux, ganti akses folder fatfree-nya agar bisa di akses.

fatree-home

Selamat  kita sudah berhasil pasang fat-free PHP framework.

Pada artikel selanjutnya, akan di berikan tutorial studi  kasus membuat sistem informasi sederhana, agar pembahasannya mudah di pahami.

Salam