Everything works correctly, but I wonder why it is written for the output in the condition: if (isset($value[1])) ?
<?php $userf = fopen('users.txt', 'r') or die("Unable to open file!"); $users = fread($userf, filesize('users.txt')); fclose($userf); $list = []; $list = explode("--#@@#--", $users); foreach ($list as $key => $value) { $list[$key] = explode('|', $value); } ?> ...
<?php foreach ($list as $value){ echo "<tr>"; if (isset($value[1])) { echo "<td> $value[0]</td><td> $value[1]</td><td><img src=uploads/".$value[2]." height=150 width=200/></td>"; } echo "</tr>"; } ?>
$listarray. Read what arrays and cycles are in particularforeach- Dmitriy Kondratiuk