On Mon, Oct 25, 2004 at 05:39:21PM +0700, Samuel wrote: > Arief Yudhawarman wrote: > >Hai milisers, > ><?php > > > ># Ada dua buah array tanggal > >$tgl1 = array ('2004','10','22'); > >$tgl2 = array ('2004','10','25'); > > > >for ($i=1; $i<=2; $i++) > >{ > > # Ada satu variable dinamis yg akan menunjuk ke 2 array tsb > > $tgl = "tgl".$i; > > print $tgl."<BR>\n"; > > for ($j=0; $j<= 2; $j++) > > { > > print "\${$tgl}[$j]: "."${$tgl}[$j]"." "; > > } > > print "<BR>\n"; > >} > >?> > > > >Hasilnya kok : > >tgl1 > >$tgl1[0]: Array[0] $tgl1[1]: Array[1] $tgl1[2]: Array[2] > >tgl2 > >$tgl2[0]: Array[0] $tgl2[1]: Array[1] $tgl2[2]: Array[2] > > $tgl berisi string ("tgl".$i).. :) > Gunakan: > - $tgl = eval("tgl".$i); // memperlakukan string sebagai kode PHP > - $tgl = ${"tgl".$i}; // cara praktis
Terimakasih atas tanggapan rekan-rekan semuanya. FYI, script kecil ini akan saya gunakan untuk entri data ke MySQL untuk melihat log akses internet mulai dr $tgl1() s/d tgl2(), di mana struktur array variable tgl sbb: $tglx[0] => entry tahun $tglx[1] => entry bulan $tglx[2] => entry tanggal dimana x = 1, 2 kalau tidak diisi salah satu, beberapa atau semua entrinya maka dianggap entry data yg diajukan adalah tanggal sekarang. Tadi malam saya coba tulis ulang scriptnya dan akhirnya ketemu penyebabnya yakni pakai tanda kutip ganda ("") pada baris ini: print "\${$tgl}[$j]: "."${$tgl}[$j]"." "; ^^^^^^^^^^^^^ Scripnya jadi seperti ini: <?php # dimana variable $tgl1 dan $tgl2 adalah array $tgl1 = $_POST['tgl1']; $tgl2 = $_POST['tgl2']; $skr = date ("Y-m-j"); $tglskr = split ("-", $skr); for ($i=1; $i<=2; $i++) { $tgl = "tgl".$i; for ($j=0; $j<= 2; $j++) { if (empty (${$tgl}[$j])) ${$tgl}[$j] = $tglskr[$j]; } } ?> Salam -- yudi -- Unsubscribe: kirim email kosong ke [EMAIL PROTECTED] Arsip, FAQ, dan info milis di http://linux.or.id/milis.php Tidak bisa posting? Baca: http://linux.or.id/wiki/index.php?pagename=ProblemMilisDanSolusi http://linux.or.id/wiki/index.php?pagename=TataTertibMilis