Pilih Laman

﷽ Subhaanallaah, walhamdulillaah, astaghfirullaah, Allaahumma shalli wa sallim ‘alaa nabiyyinaa Muhammad..

Assalaamu’alaykum warahmatullaahi wabarakaatuh..

Sebagai tulisan pertama setelah Hello World, setelah mengaktifkan kembali blog keren.bangetz.com ini, kali ini saya akan mencoba menulis mengenai pembuatan tools untuk menampilkan kata pertama dari ayat-ayat Al Quraan. Karena setelah beberapa lama mencoba mencari tools tersebut, ternyata belum saya temukan. Ya sudah saya coba saja untuk meraciknya, karena ternyata bahan-bahannya tidak terlalu sulit untuk dicari.

Sebenarnya karena sebelumnya pernah melihat cheat sheet juz ‘amma, untuk orang-orang yang sedang menghafalnya, jadi isinya beberapa kata pertama dari tiap ayat dari surat-surat di juz ‘amma. Kalau kita sudah terbiasa mendengarkan juz ‘amma, mungkin kita bisa manfaatkan cheatsheet tersebut untuk muraja’ah 🙂 Nah, bagaimana dengan surat-surat lain selain di juz ‘amma? Ini yang akhirnya mau kita buat. Kita coba yuk!

Berikut yang kita perlukan setelah kita berdo’a:

  1. Script dan lingkungan PHP untuk menuangkan kreativitas kita. Bisa di lokal pakai laragon, atau alternatif hosting lainnya.
  2. API Quraan untuk kita olah data-datanya. Kali ini kita coba dari https://api.banghasan.com (terima kasih, bang!)
  3. Kopi ☕, Cemilan 🍿🍌🍙, dan Sahabat ❤️(Opsional)

Strateginya kira-kira seperti ini:

  1. Input ayat atau range ayat surat yang diinginkan
  2. Query melalui API Quraan
  3. Proses dengan PHP
  4. Styling dan tambahkan fitur lain untuk outputnya

Happy coding dan selamat berdiskusi di kolom komentar!

<?php
$surat = $_GET["surat"];
$url = "https://api.banghasan.com/quran/format/json/surat/".$surat;

$curl = curl_init($url);
	curl_setopt($curl, CURLOPT_HEADER, false);
	curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type: application/json", "authorization: Bearer <token>"));
	curl_setopt($curl, CURLOPT_HTTPGET, 1);
	$json_response = curl_exec($curl);
	curl_close($curl);
	$response = json_decode($json_response, true);
	echo "<pre>";

$a=1; // start from 1 instead of 0
$b=10; //maksimal batas range ayat dari api.banghasan.com (20200121 = 10 ayat)
$c=$response["hasil"][0]["ayat"]; //jumlah ayat pada surat yang diminta
	if ($c%$b==0){$d=$c/$b;}else{$d=($c/$b)+1;}

for($i=1;$i<=$d;$i++){	// $i = halaman ke // $d = halaman terakhir
	$ayat=range($a,$a+9); //per 10
	$ayatx=($ayat[9]-9);
	$urlayat=$url."/ayat/".$ayatx."-".($ayatx+9);

	$curl = curl_init($urlayat);
		curl_setopt($curl, CURLOPT_HEADER, false);
		curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type: application/json", "authorization: Bearer <token>"));
		curl_setopt($curl, CURLOPT_HTTPGET, 1);
		$json_response = curl_exec($curl);
		curl_close($curl);
		$response = json_decode($json_response, true);
		//print_r($response);

	foreach($response["ayat"]["data"]["ar"] as $result) {
		$arr = explode(' ',trim($result["teks"]));
		echo "{";
		echo $result["ayat"];
		echo "} ";
		echo $arr[0];
		echo '<br>';
	}		
	$a=$a+10;
}
?>

Contoh hasilnya:

18. Al Kahfi – First Words Cheatsheet
32. As Sajdah – First Words Cheatsheet
36. Ya Sin – First Words Cheatsheet
44. Ad Dukhan – First Words Cheatsheet
50. Qaf – First Words Cheatsheet
55. Ar Rahman – First Words Cheatsheet
56. Al Waqi’ah – First Words Cheatsheet
67. Al Mulk – First Words Cheatsheet
68. Al Qolam – First Words Cheatsheet
76. Al Insan – First Words Cheatsheet