Bagi programmer pemula sering kali kesulitan dalam memecahkan hal yang mungkin beberapa dari anda anggap mudah.
Salah satu proses untuk mempercepat pembelajaran anda adalah dengan membaca source code atau algoritma orang lain. Untuk itu disini, kami berbagi beberapa trik pemrograman dalam bahasa PHP.
Penggalan kode berikut bukan hanya untuk copy-paste dalam aplikasi anda, sebaiknya anda pelajari terlebih dahulu untuk menambah wawasan anda dalam penyelesaian masalah.
- Membuat password secara acak
1 2 3 4 5 6 7 8 9 10 11 12 13 14
<?php function generatePassword($length) { $character = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; $password = ""; for($i=0;$i<$length;$i++) { $password .= $character[rand(0, 61)]; } return $password; } echo generatePassword(7); ?>
- Menghitung usia
- Mendapatkan IP address pengunjung
1 2 3 4 5
<?php echo "Your IP address is " . $_SERVER['REMOTE_ADDR']; ?>
- Memeriksa bilangan ganjil atau genap
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
<?php $testcase = array(1, 4, 5, 6, 11); function isOdd($number) { if ($number % 2 == 0) { return false; } return true; } foreach($testcase as $test) { if (isOdd($test)) { echo $test . " is odd<br/>"; } else { echo $test . " is even<br/>"; } } ?>
- Mendapatkan extension file
- Mengurut data dalam array
- Memilih data dalam array secara acak
1 2 3 4 5 6 7
<?php $fruits = array("lychee", "pineapple", "apple", "mango", "strawberry", "banana", "orange", "grape", "guava"); print $fruits[array_rand($fruits)]; ?>
- Mengacak urutan dalam array
- Memberikan highlight pada text
1 2 3 4 5 6 7 8 9
<?php $text = "Sample sentence from KomunitasWeb, regex has become popular in web programming. Now we learn regex. According to wikipedia, Regular expressions (abbreviated as regex or regexp, with plural forms regexes, regexps, or regexen) are written in a formal language that can be interpreted by a regular expression processor"; $text = preg_replace("/\b(regex)\b/i", '<span style="background:#5fc9f6">\1</span>', $text); echo $text; ?>
- Mengubah ke format title case (huruf pertama dalam kata kapital)
1 2 3 4 5 6 7 8 9 10 11 12
<?php $testcase = array("hello world", "Hello WORLD", "heLLO world"); function titleCase($text) { return ucwords(strtolower($text)); } foreach($testcase as $test) { echo titleCase($test)."<br/>"; } ?>
- Waktu terhitung sejak hari tertentu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
<?php $testcase = array("12-03-1985", "15-01-2007", "04-04-2009", "01-01-2009", "30-03-2009", "07-04-2009", "07-04-2009 11:12"); define("MINUTE", 60); define("HOUR", 3600); // 60 * 60 define("DAY", 86400); // 60 * 60 * 24 define("WEEK", 604800); // 60 * 60 * 24 * 7 define("MONTH", 2592000); // 60 * 60 * 24 * 30 define("YEAR", 31536000); // 60 * 60 * 24 * 365 function timeSince($date) { $since = abs(strtotime('now') - strtotime($date)); if($since > YEAR) { $year = floor($since / YEAR); return "more than $year year(s) ago"; } if ($since > MONTH) { $month = floor($since / MONTH); return "about $month month(s) ago"; } if ($since > WEEK) { $week = floor($since / WEEK); $day = floor(($since - ($week * WEEK)) / DAY); return "about $week week(s), and $day day(s) ago"; } if ($since > DAY) { $day = floor($since / DAY); $hour = floor(($since - ($day * DAY)) / HOUR); return "about $day day(s), $hour hour(s) ago"; } if ($since > HOUR) { $hour = floor($since / HOUR); $minute = floor(($since - ($hour * HOUR)) / MINUTE); return "about $hour hour(s), $minute minute(s) ago"; } if ($since > MINUTE) { $minute = floor($since / MINUTE); return "$minute minute(s) ago"; } return "under 1 minute ago"; } foreach($testcase as $test) { echo "Time since $test is " . timeSince($test)."<br/>"; } ?>
Jika anda memiliki trik-trik lainnya, silahkan berbagi bersama kami.
Related posts: