Arsip untukPHP

Cara mudah belajar PHP

Berikut cara belajar PHP seperti yang pernah dilakuan oleh penulis. Dan perlu diketahui, penulis tidak punya background pendidikan teknologi informasi. Begitu banyaknya resource di internet tentunya tidak sulit untuk memulai belajar sesuatu. Dan dengan adanya fasilitas pencarian yang bagus (google, yahoo) proses pembelajaran akan menjadi lebih mudah. Ditambah lagi blog-blog yang tumbuh subur dan dengan senang hati sharing ilmu.. belajar PHP sama mudahnya dengan berhitung satu dua tiga ( sampai 500 deh… becanda kok )

Silahkan simak tips belajar PHP menurut pengalaman penulis berikut resource-resource yang mendukung.

Hal yang patut digaris bawahi, belajar madiri lebih bagus daripada belajar seperti kalau kita kursus PHP. Dan kebanyakan orang yang pinter PHP bisa karena belajar mandiri. Tidak percaya? Silahkan adakan survey sendiri becanda kok.

  1. akrabkan diri dengan HTML,
    Walaupun Anda menggunakan PHP Anda tidak akan terlepas dari tag-tag HTML.
    Berikut referensi berbahasa Indonesia yang bisa digunakan:
    - http://www.webmaster-tutorial.com/tutorial/What_is_HTML/1/4
    - http://www.freewebs.com/buatsite/buatsite02.htm
    - http://unilanet.unila.ac.id/index.php?option=displaypage&Itemid=73&op=page&SubMenu=
    - http://lecturer.eepis-its.edu/~riyanto/web1.html
    - http://werbach.com/barebones/barebone_id.html
  2. akrabkan diri aplikasi web authoring: dreamweaver, NVU dan kompozer portable
    - tutorial dreamweaver
    - kompozer, sebuah tool web authoring gratis mirip dreamweaver
  3. perdalam HTML yang berhubungan dengan form,
    Mengapa form? karena banyak transaksi di PHP nantinya menggunakan form, misalnya untuk memasukkan data ke dalam database
    Referensi:
    - http://werbach.com/barebones/barebone_id.html#forms
  4. Berkenalan lebih dekat dengan PHP,
    baca referensi ini :
    - http://www.rumahweb.com/journal/berkenalan-dengan-php.htm
    - http://www.rumahweb.com/journal/php-mysql-tutorial-dasar.htm
    - ebook php
  5. mengenal variabel-variabel PHP:
    - http://phpug.freeservers.com/manual/variabel.htm
  6. berkenalan dengan php dan form,
    - form dan php
    - membuat login form
  7. bergabung dengan forum diskusi,
    Berikut forum diskusi yang bisa diikuti:
    - www.diskusiweb.com
    - www.kaskus.us
    - http://myquran.org/forum/
  8. aktif di mailing list:
    - milis PHPUG
  9. jangan malu bertanya, japri lebih enak
    Jangan ragu untuk memulai thread di forum dan coba kirim private message atau email privat ke orang yang Anda rasa bisa dimintai tolong
  10. download PHP manual
    - manual PHP berbahasa Inggris
    - manual PHP berbahasa Indonesia , http://phpug.freeservers.com/
  11. install webserver di komputer Anda
    - install web dan database server di komputer Anda
  12. menulis aplikasi sederhana
    belajarlah menulis aplikasi sederhana, misal membuat hit counter, mencari bilangan prima atau lainnya.
  13. tidak harus menghafal script
    Syntax-syntax yang ada tidak harus dihafalkan. Tapi untuk difahami. Apabila lupa bisa melihat ke php manual. Atau siapkan contekan khusus syntax-syntax apa saja yang sering Anda gunakan.
    - PHP cheat sheet
  14. menginstall aplikasi sederhana
    - Cara menginstal sNews CMS di local server
    Atau cari script-script PHP dari www.hotscripts.com/php kemudian coba install di komputer lokal Anda
    Resource lain ada di sini:
    - referensi 10 situs penyedia resource PHP
  15. mengedit aplikasi sederhana
    Coba untuk mengedit script-script yang ada. Misalnya coba edit CMS sederhana misalnya sNews kemudian tambahkan mod yang tersedia di forumnya.
  16. berkenalan dengan MySQL
    - http://cs.uad.ac.id/riadi/2006/03/30/belajar-mysql/
    - dasar-dasar php dan mysql pdf
    - dasar pemrograman php dan mysql pdf
  17. Daftar ke penyedia hosting gratis
    daftar ke penyedia hosting gratis. Pilih yang tanpa banner dengan fasilitas PHP dan MySQL.
    Pilih salah satu di sini:
    - http://www.absolutely-free-hosting.com/free-php-hosting.php
    - hosting gratis 2 minggu di rumahweb
  18. Upload lewat FTP
    - pdf cara upload lewat ftp
    Anda bisa memeperoleh software ftp secara gratis di sini:
    - http://www.filehippo.com/software/ftp/
    kalau penulis menggunakan core ftp yang downloadnya di sini
  19. jangan pernah puas, baca yang lebih banyak.
    Gunakan google untuk mencari Semua hal ada di situ. Aktif di forum, milis, kalau perlu gabung dengan forum yang berbahasa inggris.Banyak yang Anda bisa dapat dari situ.
  20. selanjutnya terserah Anda…
    kalu sudah pinter bisa ikut jadi freelancer di sini.
  21. kalau sudah pintar jangan lupa berbagi.
    Kirim artikel ke sini atau ke http://blog.phpug.or.id
  22. jangan terlalu asyik.. jangan lupa jaga ibadah, jaga kesehatan, banyak minum, banyak makan sayur dan buah.
    Serius …

Tips belajar PHP yang lain:

Kalau penulis, ngerti dikit PHP karena orang-orang di http://forum.kafegaul.com seperti Bezita (idban) dan lain-lain. Uw. sayang foumnya dah sepi. Dan karena peran teman-temanku yang pelit tapi baik hati, hendro dan fich . Setiap ditanya pasti jawabnya, “Aku ada manualnya, kamu copy aja dan baca sendiri”. Hehehe.. kalo nggak gitu mungkin aku gak bakalan kenal PHP.

Acak Data/random

Code:

<HTML>
<HEAD>
<TITLE>Mengacak Data</TITLE>
</HEAD>
<BODY>
<?php
$data = range(1, 10);
shuffle($data);

while ( list($indeks, $nilai) = each($data) )
{
print(“[$indeks] -> $nilai <BR>\n”);
}

print(“<BR>\n”);

?>

</BODY>
</HTML>

Menutree

<?php

if ( array_key_exists( ‘action’, $_GET ) )
{
global $action;
$action = $_GET[ 'action' ];
}

if ( array_key_exists( ‘id’, $_GET ) )
{
global $id;
$id = $_GET[ 'id' ];
}

echo ‘<font face=”verdana” size=”2″>’;
class submenu {

var $urls;
var $desps;
var $cot;
var $id;
//easily modify you menu symbols, can also use image tags
var $openSymbol = ‘(+)’;
var $closedSymbol = ‘(–)’;
var $itemBranch = ‘&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp|—’;

function create($id) {
$this->cot=0;
$this->id=$id;
}

function add($url, $desp) {
$this->urls[$this->cot]=$url;
$this->desps[$this->cot]=$desp;
$this->cot++;
}

function open() {
$i=0;
while($i<$this->cot) {
if ($i==0) {
global $PHP_SELF;
echo ‘<b><a href=”‘.$PHP_SELF.’?action=close&id=”>’
.$this->closedSymbol.$this->desps[0].’</a></b><br>’;
}
else {
echo $this->itemBranch.’<a href=”‘
.$this->urls[$i].’”>’.$this->desps[$i].’</a><br>’;
}
$i++;
}

}

function close() {
global $PHP_SELF;
if (! $this->id){

} else {

echo ‘<b><a href=”‘.$PHP_SELF.’?action=open&id=’.$this->id.’”>’
.$this->openSymbol.$this->desps[0].’</a></b><br>’;

}

}

}

class menu {

var $submenus;
var $cot;
var $id;

function create() {
$this->cot=0;
$this->id=2;
}

function add($submenu) {
$this->submenus[$this->cot]=new submenu;
$this->submenus[$this->cot]=$submenu;
$this->cot++;
}

function show() {
$i=0;
$tmp = new submenu;
while ($i<$this->cot) {
$tmp=$this->submenus[$i];
if ($tmp->id==(string)$this->id) {
$tmp->open();
}
else {
$tmp->close();
}
$i++;
}
}

function hide() {
$tmp = new submenu;
$tmp->close();
}
}

$sm_1=new submenu;
$sm_1->create(‘1′);
$sm_1->add(”,’ Download File’);
$sm_1->add(‘http://www.download.com’,'Download.com’);
$sm_1->add(‘http://www.aritechdev.com’,'AriTechDev’);
$sm_1->add(‘http://www.ebsoft.web.id’,'Eb Soft’);
$sm_1->add(‘http://www.avaxhome.ru’,'Avaxhome’);

$sm_2=new submenu;
$sm_2->create(‘2′);
$sm_2->add(”,’ Search Engine’);
$sm_2->add(‘http://www.google.com’,'Google’);
$sm_2->add(‘http://www.yahoo.com’,'Yahoo’);
$sm_2->add(‘http://www.Altavista.com’,'Altavista’);
$sm_2->add(‘http://www.searchindonesia.com’,'Search Indonesia’);

$sm_3=new submenu;
$sm_3->create(‘3′);
$sm_3->add(”,’ PHP’);
$sm_3->add(‘http://www.zend.com’,'zend’);
$sm_3->add(‘http://www.php.net’,'PHP’);
$sm_3->add(‘http://www.phpbuilder.com’,'PHP Builder’);
$sm_3->add(‘http://www.phpwizard.net’,'PHP Wizard’);
$sm_3->add(‘http://www.phpmyadmin.net’,'MySQl Interface’);

$sm_4=new submenu;
$sm_4->create(‘4′);
$sm_4->add(”,’ Berita’);
$sm_4->add(‘http://www.detik.com’,'Detik’);
$sm_4->add(‘http://www.detikinet.com’,'Detikinet’);
$sm_4->add(‘http://www.kompas.com’,'Kompas’);
$sm_4->add(‘http://www.Astaga.com’,'Astaga’);

$m_1=new menu;
$m_1->create();
$m_1->add($sm_1);
$m_1->add($sm_2);
$m_1->add($sm_3);
$m_1->add($sm_4);

if ($action==”) {
$m_1->show();
}

if ($action==’open’) {
$m_1->id=$id;
$m_1->show();
}

if ($action==’close’) {
$m_1->id=$id;
$m_1->hide();
$m_1->show();
}

echo ‘</font>’;
?>

mengetahui Ip orang

Code:

<html>
<head>
</head>
<?php
/*Bagian ini untuk mengecek IP address apa user menggunakan IP forward atau direct*/
if (getenv(HTTP_X_FORWARDED_FOR)){
$IPaddr=getenv(HTTP_X_FORWARDED_FOR);
}
else {
$IPaddr=getenv(REMOTE_ADDR);
}

/*Bagian ini adalah fungsi untuk mendapatkan Hostname resolve dari
Ipaddress*/
function hostname($hostname) {
global $yourhost;
$yourhost=gethostbyaddr($hostname);
}

hostname($IPaddr);

/*Bagian ini untuk mengecek apakah Ipaddress merupakan IP forwarad, jika ya IP aslinya (diforward lewat mana)*/
if ($ipVIAss) {
$viasProxy=”via $ipVIAss<br>” . getenv(HTTP_COMING_FROM) .”<br>”;
}

/*Bagian ini untuk mengecek apakah nilai hostname (IP resolve) dipenuhi atau tidak*/
if (!$yourhost) { $yourhost=”unknown”; }

//Bagian ini untuk mendapatkan informasi UserAgent*/
$pageagent=$_SERVER["HTTP_USER_AGENT"];

$pageagent=str_replace(“(“,”",$pageagent);
$pageagent=str_replace(“)”,”",$pageagent);

/*Bagian ini adalah untuk pemisahan antara Browser dan operasi sistem*/
list($mozila,$bws,$osname,$dig)=explode(“;”,$pageagent);
$bws=trim($bws);
$osname=trim($osname);
$osname=strval($osname);
if (eregi(“Windows NT 5.1″,$osname)) { $osname=”Microsoft Windows XP”; } if (eregi(“Windows NT 5.0″,$osname)) { $osname=”Microsoft Windows 2000″; } if (eregi(“Windows NT 5.2″,$osname)) { $osname=”Microsoft Windows 2003″; } if (eregi(“Win 9x”,$osname)) { $osname=”Microsoft Windows ME”; }
if (eregi(“Windows 98″,$osname)) { $osname=”Microsoft Windows 98″; }

/*Bagian ini untuk menampilkan hasilnya*/
echo “
IP Address <b>$IPaddr</b> resolve <b>$yourhost</b><br><b>$viasProxy</b> Browser <b>$bws</b> ($mozila) OS <b>$osname</b><br>”;

//User Aget PHP Version
echo $_SERVER["HTTP_USER_AGENT"];
?>

Tipe data PHP

Pada bagian ini saya akan menjelaskan dasar dari penggunaan script PHP, yang meliputi variabel, operator, dan pernyataan (statement). Statement adalah bagian dari sebuah script PHP yang kita buat, guna memberikan perintah pada PHP untuk melakukan sesuatu. Sebagai contoh statement tersebut akan menghitung sebuah nilai dan menyimpannya dalam memori, menampilkan sesuatu di layar, ataupun menyimpan dalam harddisk. Ada banyak sekali tipe statement di dalam PHP seperti Function Call, variable assignments, loop, dan if then else condition.

Dalam membuat sebuah script PHP umumnya kita akan membuat berbagai macam statement. Statement ini dapat berupa simbol, angka, dan nama. Untuk lebih jelas mengenai statement ini perhatikan contoh code listing di bawah.

Code:

<?php
//ekspresi statement
4 + 5;

//contoh lain ekspresi statement
print(“Belajar PHP!”);

//Kontrol statement
if(5 > 4)
{
/ /sebuah assignment statement
$a = 5;
}
?>
Dalam contoh di atas kita dapat melihat terdapat empat contoh statement, pada statement pertama merupakan prosedur yang tidak akan ditampilkan di layar browser, namun PHP mengerti terdapat sebuah operator matematika di sana “+” yang akan menghasilkan sebuah angka “9”. Pada statement kedua PHP akan menampilkan sebuah kalimat “Belajar PHP!” tanpa tanda kutip(“). Dalam statement kedua ini saya menggunakan statement print() yang akan menampilan apa saja yang berada di anatara tanda kurung.

Ekpresi adalah bagian dari kode yang memprenstasikan sebuah nilai. Sebagai contoh pada statement pertama 4 + 5 adalah sebuah ekspresi yang mempresentasikan nilai 9, “Belajar PHP!” mempresentasikan 12 huruf dan strlen(“PHP”) mempresentasikan nilai 3 yang di dapat melalui function call.

Pada statement ketiga kita dihadapkan dengan sebuah if conditon dan pendefinisian sebuah variabel. PHP akan berpikir jika 5 lebih besar dari pada 4 maka ia mendefiniskan variabel a string merupakan bilangan angka 5.

PHP memiliki delapan jenis tipe data yang meliputi integer, floating-point number, strings, bolean, null, array dan object serta resource.

Integer
Integer merupakan sebuah bilangan yang memiliki lebar dari –2,147,483,648 ke +2,147,483,647 dalam sebuah komputer 32-bit, lebar ini sama dengan lebar yang dimiliki oleh long data dalam bahasa C. PHP mengijinkan penulisan integer dalam tiga cara, desimal, oktal maupun heksadesimal. Desimal merupakan bilangan yang berdasar pada bilangan 10 angka, bilangan ini merupakan bilangan yang kita gunakan sehari-hari. Dalam penulisan integer anda dapat menuliskannya tanpa menulis angka nol (0) di depan, dan dapat dimulai dengan tanda plus (+) ataupun minus (-) untuk memberitahu bilangan tersebut merupakan bilangan positif atau negatif, namun yang harus diingat adalah dalam integer anda tidak dapat memasukkan bilangan koma dalam sebuah bilangan integer.

Oktal merupakan bilangan yang berbasis pada delapan angka dari 0 hingga 7. Dalam penulisan bilangan oktal didahului dengan penulisan angka nol (0). Bilangan oktal ini berfungsi dalam beberapa konteks, seperti penulisan perijinan sebuah data (file permission). Bagi anda yang telah mengenal sistem UNIX, pasti tahu untuk merubah perijinan dari pemilik menjadi terbuka bagi user, file permission file tersebut harus di ubah menjadi 0777.

Heksadesimal merupakan bilangan yang berbasi pada 16 bilangan, dimulai dengan 0x kemudian diikuti dengan angka dari 0 hingga 9 atau huruf dari A hingga F. Dalam heksadesimal ini penulisan huruf besar atau huruf kecil tidak menjadi masalah.

Code:

<?php
$a = 1234; // Bilangan desimal
$a = -123; // Bilangan negatif
$a = 0123; // Bilangan oktal (sama dengan bilangan 83 desimal)
$a = 0×1A; // hexadecimal number (sama dengan bilangan 26 desimal)
?>
Floating-Points Numbers

Floating number mencerminkan sebuah bilangan numerik dengan desimal digit, dalam bahasa C sama dengan double. Lebar dari floating number ini tergantung dari platformapa yang anda gunakan. Umumnya lebar floating number lebih besar dari integer, anda dapat menulis floating number dalam beberap cara. Rangkaian bilangan, rangkaian desimal maupun scientific yang dikenal dengan bilangan eksponensial. Contohnya bila anda dapat menuliskan 3.2 juta sebagai 3.2E6, huruf E dapat berupa UPPERCASE maupun LOWERCASE.

Code:

<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>

Strings

Sebuah web aplikasi umunya menerapkan teks lebih banyak daripada perhitungan matematika. String merupakan bagian rangkaian karakter yang dapat berisi berbagai macam tipe data termasuk binary. Untuk menulis sebuah string anda dapat menggunakan petik satu (‘) maupun petik dua (“) sebelum dan sesudah variabel. Yang harus di ingat adalah quote pembuka harus sama dengan quote penutup.

Dalam penulisan string anda dapat menuliskannya dalam bentuk petik satu, petik dua maupun heredoc sintax. Dalam petik satu apabila anda hendak menuliskan petik satu di dalamnya anda harus menggunakan backslash (\) sebelum petik satu tersebut.

Code:

<?php
echo ‘Ini merupakan string sederhana’;

// Tampilan: Bagai membeli ‘kucing dalam karung’
echo ‘Bagai membeli \’kucing dalam karung\”;

?>

Dalam petik dua PHP mengerti lebih banyak karakter spesial yang dapat digunakan. Dan sama seperti penggunaan dalam petik satu apabila anda hendak mengunakan petik dua di dalam petik dua variabel, anda harus menempatkan backslash (\) sebelum petik dua yang berada di dalam petik dua.

Cara lain untuk mengenali sebuah string adalah dengan menggunakan heredoc syntax(“<<<”). Untuk penulisan dalam code, anda harus meletakkan sesuatu tanda yang memberi tahu itu merupakan sebuah heredoc syntax setelah tanda <<< kemudian tuliskan string anda. Tuliskan kembali tanda tersebut di akhir string yang menunjukkan anda menutup string. Yang harus diperhatikan dalam heredoc syntax ini adalah saat anda akan menutup string pastikan tanda penutup itu berada dalam garis baru dan ditutup dengan titik koma ( ; ) serta tidak ada tanda lain selain titik koma seperti spasi dan tab.

Code:

<?php
echo <<<EOT
Cara menggunakan heredoc syntax adalah seperti ini.
EOT;
?>

« Tulisan sebelumnya