Membuat Ekstensi PHP dengan Zephir

  • 0

Membuat Ekstensi PHP dengan Zephir

Category : Programming , Tutorial

PHP_Logo-image(700x350-crop)

Zephir atau Zend Engine PHP Intermediate adalah sebuah bahasa pemrograman yang digunakan untuk membuat sebuah ekstensi PHP. Zephir menggunakan syntax yang mirip dengan PHP, jadi bagi kalian programmer PHP ingin membuat ekstensi PHP sendiri tapi tidak menguasai bahasa C, maka zephir adalah solusinya.

Pada tutorial ini, penulis menggunakan sistem operasi ubuntu, PHP 5.5.9 dan apache2 sebagai web server.

Instalasi zephir

Untuk menginstalasi zephir, ada beberapa yang perlu kita siapkan, diantaranya:

  • gcc >= 4.x/clang >= 3.x
  • re2c 0.13 atau versi terbaru
  • gnu make 3.81 atau versi terbaru
  • autoconf 2.31 atau versi terbaru
  • automake 1.14 atau versi terbaru
  • libpcre3
  • php development headers and tools

Bagi kalian yang menggunakan sistem operasi ubuntu, tinggal jalankan perintah berikut:

$ sudo apt-get install git gcc make re2c php5 php5-json php5-dev libpcre3-dev

Memulai instalasi

Klon zephir dari github $ git clone https://github.com/phalcon/zephir.git

Masuk ke direktori $ cd zephir

Instal zephir $ ./install -c

Cek apakah zephir terinstal $ zephir help

Memulai membuat ekstensi

Jalankan perintah berikut untuk membuat sebuah direktori yang mana nantinya akan di kompilasi menjadi sebuah ekstensi PHP. $ zephir init hello

Maka akan membuat sebuah direktori yang bernama hello. Masuk ke direktori hello dengan perintah: $ cd hello

Didalam direktori tersebut, akan terdapat direktori ext dan hello. Pada direktori hello, masukkan perintah berikut: $ mkdir hello/lib $ touch hello/lib/hello.zep

Perintah tersebut akan membuat sebuah direktori baru bernama lib didalam folder hello dan membuat sebuah file bernama hello.zep didalamnya.

Masukkan kode berikut kedalam hello/lib/hello.zep

namespace Hello\Lib;
class Hello {
	public static function hello_world(text) {
		return text;
	}
}

Lalu kompilasi kode menggunakan perintah: $ zephir build

Ekstensi sudah berhasil dibuat, tetapi masih belum bisa dijalankan karena ekstensi tersebut belum terpasang di PHP. Buat sebuah file bernama hello.ini di direktori /etc/php5/apache2/conf.d/ dan berikut isi dari hello.ini

extension=hello.so

Lalu restart web server, dengan begitu ekstensi anda telah berhasil terpasang di PHP.

Memanggil fungsi dari ekstensi

Buat sebuah file bernama hello.php, dan masukkan kode berikut:

<?php
use Hello\Lib\Hello;
echo Hello::hello_world("Hello World");
?>

Perhatikan pada kode tersebut Hello\Lib merupakan namespace dari ekstensi, sedangkan Hello merupakan nama classnya hello_world merupakan nama function yang terdapat pada class.

Dan akhirnya ekstensi sudah berhasil dibuat dan dijalankan. Beberapa contoh fungsi dari PHP yang telah saya bungkus jadi ektensi PHP bisa kalian lihat di

https://github.com/devilscream/kodebin-lib/ Referensi: http://docs.zephir-lang.com/en/latest/index.html


source: https://www.codepolitan.com/membuat-ekstensi-php-dengan-zephir

 


Leave a Reply

About Author

marhen nuswantara