Dalam belajar bahasa program, biasanya kita dituntut untuk menguasainya secara terstruktur. Harus belajar algoritmanya dulu, kemudian tipe data, operator, dan sebagainya. Memang benar, jika itu diikuti sesuai tahapannya, Anda akan menjadi seorang programmer yang mumpuni. Tetapi ada kalanya Anda dihadapkan pada kondisi belajar cepat suatu bahasa program. Kami dari Belakode mencoba mensarikan beberapa sintaks dasar yang wajib Anda ketahui sebagai programmer PHP.
Integrasi ke dokumen HTML:
Operasi Variabel:
Kondisional:
Bentuk lain:
Kondisional bisa juga menggunakan keyword switch:
Jika menggunakan bentuk shorthand,
Sintaks di atas merupakan bentuk singkat (shorthand) dari sintaks berikut:
Pengulangan atau iterasi
menggunakan while:
atau
menggunakan looping for dan foreach
Kalau foreach, biasanya ada array yang hendak dicek satu per satu, contoh;
Contoh menggunakan SESSION:
Baca dan tulis
Membaca keseluruhan
Silakan baca lebih lanjut di PHP file_get_contents.
Koneksi database
Untuk sql update dan delete juga sama
Selengkapnya lihat: https://www.techflirt.com/measure-execution-time-php-script.
Melihat memory yang dipakai pada titik tertentu (memory_get_usage)
Melihat memori puncak (memory_get_peak_usage)
Lebih lanjut silakan baca di sini.
Nah, demikian semoga bisa bermanfaat!
Paling Dasar
Di bagian paling dasar ini kami menyajikan beberapa sintaks yang memang harus diketahui, yakni integrasi ke dokumen HTML, operasi variabel, kondisional, serta perulangan.Integrasi ke dokumen HTML:
<body> <?php $judul = 'Berita Belakode'; ?> <h1><?=$judul ?></h1> </body>
Operasi Variabel:
//penggabungan string dengan tanda titik $judul = $str1 . ' ' . $str2; $judul .= ' ' . $str1 ; //$judul = $judul . ' ' . $str1 echo $judul; //perkalian, pertambahan, pengurangan, dan pembagian (aritmatika) $a = 10 * 5; // $a = 50 $b = $a + 7; // $b = 57 $c = $b - 1; // $c = 56 $d = $c / 8; // $d = 7 //pembagian sisa atau modulus $e = $d % 5; // $e = 2 (sisa dari 7 yang habis dibagi 5) //pangkat $f = $e**2; // $f = 2 pangkat 2, yaitu 4 //inkremen (nambah 1) dan dekremen (kurang 1), ada yang post dan pre. Silakan bandingkan bedanya $i = 10; $j = 20; echo '$i++ = ' . $i++ . '<br>'; // nilai $i masih 10 echo '$i = ' .$i . '<br>'; // nilai $i berubah jadi 11 echo '$i-- = ' .$i-- . '<br>'; // $nilai $i masih 11 echo '$i = ' .$i . '<br>'; //nilai $i berubah echo '++$j = ' .++$j . '<br>'; // nilai $j sudah 21 echo '$j = ' .$j . '<br>'; //$nilai $j tetap 21 echo '--$j = ' .--$j . '<br>'; // $nilai $j sudah 20 echo '$j = ' .$j . '<br>'; //$nilai $j tetap 20 //operasi logika $t = true; $f = false; $benar = $t and $t; $benar = $t or $f; $benar = $t && $t; $benar = $t || $f; $salah = !$f;
Kondisional:
<?php if($a>0) { $c= 10/$a; } elseif ($a==0) { $c = 0; } else { $c = 1/$a; }
Bentuk lain:
if ($a > $b): echo $a." is greater than ".$b; elseif ($a == $b): // Note the combination of the words. echo $a." equals ".$b; else: echo $a." is neither greater than or equal to ".$b; endif;
Kondisional bisa juga menggunakan keyword switch:
$favcolor = "red"; switch ($favcolor) { case "red": echo "Your favorite color is red!"; break; case "blue": echo "Your favorite color is blue!"; break; case "green": echo "Your favorite color is green!"; break; default: echo "Your favorite color is neither red, blue, nor green!"; }
Jika menggunakan bentuk shorthand,
$a = $b > 10 ? $b : $c;
Sintaks di atas merupakan bentuk singkat (shorthand) dari sintaks berikut:
if ($b > 10) $a = $b; else $a = $c;
Pengulangan atau iterasi
menggunakan while:
$x = 1; while($x <= 5) { echo "The number is: $x <br>"; $x++; }
atau
$x = 1; do { echo "The number is: $x <br>"; $x++; } while ($x <= 5);
menggunakan looping for dan foreach
for ($x = 0; $x <= 10; $x++) { echo "The number is: $x <br>"; }
Kalau foreach, biasanya ada array yang hendak dicek satu per satu, contoh;
$warnas = array("red", "green", "blue", "yellow"); foreach ($warnas as $nilai) { echo "$nilai <br>"; }
Penanganan Error
$data = ''; try { if($data == NULL ) { throw new Exception("data masih kosong"); //jika ada error langsung dilarikan ke bagian catch }; echo 'data sudah ada'; //tampil jika tidak ada error } catch(Exception $e) { echo 'Pesan error: ' . $e->getMessage(); };
Tanggal dan Waktu
Untuk bekerja berkaitan dengan tanggal dan waktu, kita harus memahami beberapa bentuk waktu yang bisa diolah oleh PHP. Bentuk-bentuk tersebut adalah timestamp (bentuk 02-12-2017 dsb), unixtime (bentuk integer), dan serta bentuk teks (monday, saturday, dsb).//menampilkan tanggal dan waktu sekarang echo date('l, d-m-Y h:i:s a') . "<br/>"; echo date('d / M / y') . "<br/>"; echo date('D - M / Y') . "<br/>"; //mendapatkan informasi waktu hari ini print_r(getdate()); //waktu bukan hari ini echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998))."<br>"; $besok = mktime(0, 0, 0, date("m") , date("d")+1, date("Y")); $bulanlalu = mktime(0, 0, 0, date("m")-1, date("d"), date("Y")); $tahundepan = mktime(0, 0, 0, date("m"), date("d"), date("Y")+1); echo "Besok : " . date("d M Y",$besok) . "<br>"; echo "Bulan lalu : " . date("M Y", $bulanlalu) . "<br>"; echo "Tahun depan: " . date("Y", $tahundepan) . "<br>"; //selain fungsi date(), ada class DateTime $awal = new DateTime('2017-08-10'); $akhir = new DateTime(); // Waktu sekarang $diff = $awal->diff($akhir); //bentuk unix time echo time(); //dari string ke bentuk waktu echo strtotime("now") , "<br>"; echo strtotime("22 Desember 2016"), "<br>"; echo strtotime("+1 day"), "<br>"; echo strtotime("+1 month"), "<br>"; echo strtotime("+1 week 2 days 4 hours 2 seconds"), "<br>"; echo strtotime("next Friday"), "<br>"; echo strtotime("last Friday"), "<br>"; //selisih waktu dan hari $tgl1 = "25-10-2017"; $tgl2 = "27-10-2017"; $selisih = strtotime($tgl2) - strtotime($tgl1); $hari = $selisih/(60*60*24); //1 hari = 24 jam * 60 menit * 60 detik echo "Selisih = $hari hari <br>"; $besok = time() + (24 * 60 * 60); // 24 jam * 60 menit * 60 detik echo 'Sekarang: '. date('Y-m-d') ."<br>"; echo 'Besok: '. date('Y-m-d', $besok) ."<br>"; echo 'Minggu Depan: '. date('Y-m-d', strtotime('+1 week')) ."<br>"; Setting Timezone agar waktu sesuai dengan wilayah kita date_default_timezone_set('Asia/Jakarta');
Pengolahan Data Pengguna
Untuk mengolah data pengguna, kita akan memainkan dua hal: data dari form dan data dari session.var_dump($_POST); echo "<br>"; var_dump($_GET); echo "<br>"; var_dump($_REQUEST); echo "<br>";
Contoh menggunakan SESSION:
<?php session_start(); //harus di bagian paling atas if (!isset($_SESSION['count'])) { $_SESSION['count'] = 0; } else { $_SESSION['count']++; }
Operasi File
Membaca file teks per baris$lines = file('petugas.txt');
echo "<h3>Berikut ini daftar petugas</h3><hr>";
foreach ($lines as $line_num => $line){
print "<font color=red>Line #{$line_num}</font> : " . $line . "<br />\n";
}
Baca dan tulis
$namafile = "contoh_file.txt"; $handle = fopen ($namafile, "w"); if (!$handle) { echo "Gagal"; } else { fwrite ($handle, "Tuliskan di sini<br>"); //nulis keseluruhan fputs ($handle, "Tambahkan tulisan di sini"); //menambahkan teks echo "Sukses nulis"; } fclose($handle);
Membaca keseluruhan
//menggunakan file_get_contents (paling bagus secara performa) $homepage = file_get_contents('http://www.example.com/'); $file = file_get_contents('./people.txt');
Silakan baca lebih lanjut di PHP file_get_contents.
Basis data MySQL
Untuk melakukan pengoperasian basis data pada PHP dengan MySQL, ada tiga pendekatan, yaitu mysql, mysqli, dan PDO. Untuk yang pertama, yaitu mysql sudah diganti dengan mysqli. Meskipun mungkin sintaks menggunakan mysql masih bisa jalan, tetapi metode itu sudah tidak didukung lagi oleh vendor MySQL. Di sini kita gunakan yang paling mudah, mysqli.Koneksi database
$servername = "localhost"; $database = "dbnamecontoh"; $username = "root"; $password = ""; $conn = mysqli_connect($servername, $username, $password, $database); if (!$conn) { // cek koneksi die("Koneksi gagal: " . mysqli_connect_error()); } echo "Koneksi berhasil"; mysqli_close($conn);
Untuk sql update dan delete juga sama
$sql = "DELETE FROM petugas WHERE id LIKE '%nama%'"; $query = mysqli_query($db, $sql); // jika query berhasil if( $query ){ header('Location: daftar_petugas.php'); } else { die("gagal query..."); }
Performa
Melihat waktu eksekusi$timer = microtime(true); sleep(2); //sintaks lainnya print $total_time = microtime(true) - $timer;//Print 2.0034 echo '<br>'; //atau sleep(2); $ru = getrusage(); print ($ru['ru_utime.tv_usec'] + $ru['ru_stime.tv_usec'])/1000000;
Selengkapnya lihat: https://www.techflirt.com/measure-execution-time-php-script.
Melihat memory yang dipakai pada titik tertentu (memory_get_usage)
print memory_get_usage()."\n" ;//print 354312;
$a = '';
for($i=0;$i<=100000;$i++){
$a[] = $i;
}
print memory_get_usage()."\n";//4552792;
unset($a);
print memory_get_usage()."\n";//354312;
Melihat memori puncak (memory_get_peak_usage)
print 'Memori mula-mua ' . memory_get_usage() . " bytes <br>"; $string = str_repeat("coba ", 100000); $arr_split = str_split($string); $count = count($arr_split); for($i=0;$i<$count;$i++){ //sintaks Anda } print 'Memori setelah operasi di atas ' . memory_get_usage() . " bytes <br>"; unset($string); unset($arr_split); unset($count); unset($i); print 'Memori setelah unset ' . memory_get_usage() . " bytes <br>"; print 'Memori tertinggi (peak) yang pernah dicapai ' . memory_get_peak_usage() . ' bytes';
Lebih lanjut silakan baca di sini.
Nah, demikian semoga bisa bermanfaat!
Tidak ada komentar:
Posting Komentar