here is your solution for your database style:
Live Example: https://3v4l.org/Xhr68
<?php
$data = file_get_contents("database.txt"); //read the file
$rows = explode("\n", $data); //create array separate by new line
$rows = array_map("trim", $rows); // for removing any unwanted space
$rowCount = count($rows); // Count your database rows
function CountCol($data){
$col = explode("|", $data);
return count($col);
}
// Creating array from our text database
// in our database first two rows are not needed so I am skipig this
// by using i = 2
// and $rowCount -1 because of our array start from 0 but count start from 1
// adding $id[$i-2] and like other because of we have started our first loop from 2 and I want to
// create my new array starting from 0 .
for ($i=2; $i <$rowCount-1 ; $i++) {
for ($j=0; $j < CountCol($rows[$i]) ; $j++) {
$column = explode("|", $rows[$i]);
$id[$i-2] = $column[0];
$name_sname[$i-2] = $column[1];
$identity[$i-2] = $column[2];
$address[$i-2] = $column[3];
$region[$i-2] = $column[4];
$hours[$i-2] = $column[5];
$destination[$i-2] = $column[6];
$price[$i-2] = $column[7];
}
}
// let's print our data
// I am using 3 here because of we have no need first 2 rows and our array start from 0
for ($i=0; $i < $rowCount-3 ; $i++) {
echo "ID: ".$id[$i] ."<br>";
echo "name_sname: ".$name_sname[$i]."<br>";
echo "identity: ".$identity[$i] ."<br>";
echo "address: ".$address[$i] ."<br>";
echo "region: ".$region[$i] ."<br>";
echo "hours: ".$hours[$i] ."<br>";
echo "destination: ".$destination[$i] ."<br>";
echo "price: ".$price[$i] ."<br>";
}
//
// get it like below
echo "printing information using id number <br>";
echo $name_sname[1]; // here 1 is row number or id number
echo $name_sname[2];
echo "<br>";
?>
// but I like to create the database like below. That means no need first two line Columns name and - line
1|Ezra Mod1|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
2|Ezra Mod2|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
3|Ezra Mod3|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
4|Ezra Mod4|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
5|Ezra Mod5|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
6|Ezra Mod6|123456789|husi, stanilesti, vaslui|HUSI - IASI|20:00|HUSI|100;
if you create the database like this below is the solution.
<?php
$data = file_get_contents("database.txt"); //read the file
$rows = explode("\n", $data); //create array separate by new line
$rows = array_map("trim", $rows); // for removing any unwanted space
$rowCount = count($rows); // Count your database rows
function CountCol($data){
$col = explode("|", $data);
return count($col);
}
// Creating our array database
for ($i=0; $i <$rowCount-1 ; $i++) {
for ($j=0; $j < CountCol($rows[$i]) ; $j++) {
$column = explode("|", $rows[$i]);
$id[$i] = $column[0];
$name_sname[$i] = $column[1];
$identity[$i] = $column[2];
$address[$i] = $column[3];
$region[$i] = $column[4];
$hours[$i] = $column[5];
$destination[$i] = $column[6];
$price[$i] = $column[7];
}
}
// now we have full control and everything dynamic let's print
for ($i=0; $i < $rowCount-1 ; $i++) {
echo "ID: ".$id[$i] ."<br>";
echo "name_sname: ".$name_sname[$i]."<br>";
echo "identity: ".$identity[$i] ."<br>";
echo "address: ".$address[$i] ."<br>";
echo "region: ".$region[$i] ."<br>";
echo "hours: ".$hours[$i] ."<br>";
echo "destination: ".$destination[$i] ."<br>";
echo "price: ".$price[$i] ."<br>";
}
//
// get it like below
echo "Tow number<br>";
echo $name_sname[1]; // here 1 is row number or id number
echo $name_sname[2];
?>