Contoh kasus sederhana ini adalah, kita akan menginput data ke textarea, data yang dimasukkan perbaris, misalkan data KM1020 – KM10145, bila kita menggunakan tag input text terlalu banyak inputan yang membuat halaman penuh dengan form input, salah satu solusinya dengan menggunakan TextArea. Cara untuk memecah tiap baris yang di input di textarea bisa dilihat di script dibawah ini

Form HTML

Contoh form textarea sederhana

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>Array HTML - Jaranguda.com</title>
</head>
<body>
  <form action="form-array.php" method="POST">
    <textarea name="kodeBarcode"></textarea>
    <br>
    <input type="submit" name="Submit" value="Submit">
  </form>
</body>
</html>

Script PHP

Dari input textarea di atas, kita akan memecah setiap baris menjadi 1 string, jadi bila orang menginput 20 baris, maka kita akan mendapat 20 string.

<?php
 
$array = explode(PHP_EOL, $_POST['kodeBarcode']);
$total = count($array);
var_dump($array);

Contoh output

array(32) { [0]=> string(5) "K101 " [1]=> string(5) "K102 " [2]=> string(5) "K103 " [3]=> string(5) "K104 " [4]=> string(4) "123 " [5]=> string(4) "456 " [6]=> string(5) "K105 " [7]=> string(5) "K106 " [8]=> string(5) "K107 " [9]=> string(5) "K108 " [10]=> string(5) "K109 " [11]=> string(5) "K110 " [12]=> string(5) "K111 " [13]=> string(5) "K112 " [14]=> string(5) "K113 " [15]=> string(5) "K114 " [16]=> string(5) "K115 " [17]=> string(5) "K116 " [18]=> string(5) "K117 " [19]=> string(5) "K118 " [20]=> string(5) "K119 " [21]=> string(5) "K120 " [22]=> string(5) "K121 " [23]=> string(5) "K122 " [24]=> string(5) "K123 " [25]=> string(5) "K124 " [26]=> string(5) "K125 " [27]=> string(5) "K126 " [28]=> string(5) "K127 " [29]=> string(5) "K128 " [30]=> string(5) "K129 " [31]=> string(4) "K130" }

untuk memecah array diatas kita menggunakan looping/perulangan foreach

<?php
 
$array = explode(PHP_EOL, $_POST['kodeBarcode']);
$total = count($array);
foreach($array as $item) {
    echo $item . "<br>";
}

atau for

<?php
 
$array = explode(PHP_EOL, $_POST['kodeBarcode']);
$total = count($array);
for ($i=0; $i < $total ; $i++) {
    echo "$array[$i]" . "<br>";
}

hasil kedua script diatas sama saja ;)
hasil textarea explode form array

Leave a comment

Your email address will not be published. Required fields are marked *