Cara menggunakan php array filter

❮ PHP Array Reference

Example

Filter the values of an array using a callback function:

<?php
function test_odd($var)
  {
  return($var & 1);
  }

$a1=array(1,3,2,3,4);
print_r(array_filter($a1,"test_odd"));
?>

Try it Yourself »


Definition and Usage

The array_filter() function filters the values of an array using a callback function.

This function passes each value of the input array to the callback function. If the callback function returns true, the current value from input is returned into the result array. Array keys are preserved.


Syntax

array_filter(array, callbackfunction, flag)

Parameter Values

ParameterDescription
array Required. Specifies the array to filter
callbackfunction Optional. Specifies the callback function to use
flag Optional. Specifies what arguments are sent to callback:
  • ARRAY_FILTER_USE_KEY - pass key as the only argument to callback (instead of the value)
  • ARRAY_FILTER_USE_BOTH - pass both value and key as arguments to callback (instead of the value)


Technical Details

Return Value:Returns the filtered array
PHP Version:4.0.6+
PHP Changelog:PHP 5.6: Added optional flag parameter

❮ PHP Array Reference


Saya ingin membuat tabel per hari selama 1 bulan. saya ada database dengan tabel begini (angap tanggal sampai tgl 30): +-------------------------+ | tanggal |kopi|teh|gula| +-------------------------+ |2018-01-01 | 2 | 1 | 5 | +-------------------------+ |2018-01-02 | 1 | 4 | 8 | +-------------------------+ saya pangil semua berdasarkan tanggal selama 1 bulan

 $data=mysql_query("SELECT * FROM bahan WHERE tanggal BETWEEN '2018-01-01' AND '2018-01-31'"); 
$dat = mysql_fetch_array($data); 

lalu akan saya tampilkan dalam tabel begini +-------------------------+ |Tanggal | 1 | 2 | 3 | 4 |dst.. +-------------------------+ |Kopi |2kg|1kg|5kg| +-------------------------+ |Teh |1kg|4kg|8kg| +-------------------------+ |Gula |1kg|4kg|8kg| +-------------------------+ bagai mana pengkodeanya... saya stuck di situ.

@Adinur

63 Kontribusi 8 Poin

Dipost: 3 tahun yang lalu Update 2 tahun yang lalu


Jawaban Terpilih

Di taruh di array aja... Kayak gini kira-kira

<?php
$bahan = array();
$jenisBahan = array('Kopi', 'Teh', 'Gula');

while ($d = mysqli_fetch_assoc($data))
{
	$bahan[$d['tanggal']]['kopi'] = $d['kopi'];
	$bahan[$d['tanggal']]['teh'] = $d['teh'];
	$bahan[$d['tanggal']]['gula'] = $d['gula'];
}

// Tanggal
echo 'Tanggal';

for ($a = 1; $a <= 31; $a++) {
	echo ' | ' . $a;
}

// Bahan-bahan
foreach ($jenisBahan as $jenis) {
	echo '<br>' . $jenis;

	for ($a = 1; $a <= 31; $a++) {
		$tgl = '2018-10-' . str_pad($a, 2, '0', STR_PAD_LEFT);
		$text = isset($bahan[$tgl]) ? $bahan[$tgl][strtolower($jenis)] . ' Kg' : ' - ';
		
		echo ' | ' . $text;
	}
}
?>

Tanggalnya disesuaiin aja

Cara menggunakan php array filter

@SaifulAnwar

5 Kontribusi 6 Poin

Dipost: 3 tahun yang lalu Update 3 tahun yang lalu

Jawaban

Di taruh di array aja... Kayak gini kira-kira

<?php
$bahan = array();
$jenisBahan = array('Kopi', 'Teh', 'Gula');

while ($d = mysqli_fetch_assoc($data))
{
	$bahan[$d['tanggal']]['kopi'] = $d['kopi'];
	$bahan[$d['tanggal']]['teh'] = $d['teh'];
	$bahan[$d['tanggal']]['gula'] = $d['gula'];
}

// Tanggal
echo 'Tanggal';

for ($a = 1; $a <= 31; $a++) {
	echo ' | ' . $a;
}

// Bahan-bahan
foreach ($jenisBahan as $jenis) {
	echo '<br>' . $jenis;

	for ($a = 1; $a <= 31; $a++) {
		$tgl = '2018-10-' . str_pad($a, 2, '0', STR_PAD_LEFT);
		$text = isset($bahan[$tgl]) ? $bahan[$tgl][strtolower($jenis)] . ' Kg' : ' - ';
		
		echo ' | ' . $text;
	}
}
?>

Tanggalnya disesuaiin aja

@SaifulAnwar

5 Kontribusi 6 Poin

Dipost: 3 tahun yang lalu Update 3 tahun yang lalu


Mantap mas terimakasih mas akan saya coba. Sai ini saya masih mengunakan while saja, untuk tabelnya saya manual dari while saya output ke value=''

@Adinur

63 Kontribusi 8 Poin

Dipost: 3 tahun yang lalu


Login untuk gabung berdiskusi

  • Library Import Excel ke Mysqli
  • membuat Combobox Bertingkat
  • halaman tidak tereload sehingga tabel tidak terupdate
  • file upload tidak tampil dan tidak masuk database
  • Disable simbol keyboard menggunakan javascript

  • @ahanafi

    802 Kontribusi 528 Poin

  • @Nandar

    647 Kontribusi 204 Poin

  • @dianarifr

    642 Kontribusi 316 Poin

  • @Saputroandhi

    509 Kontribusi 162 Poin

  • @dodipsitorus

    412 Kontribusi 145 Poin