I think you've got yourself wrapped up in an extra loop there: read a line, add it to the array, read through the array, read another line, read through the whole array again, ... and why are you exploding twice?
I'd replace
$line = fgets ($fp, 1024);
array_push ($array, $line);
explode("::", $array);
foreach ($array as $tochop)
{
print "<br><br>";
$chopped = explode("::", $tochop);
with
$line = fgets($fp, 1024);
$chopped=explode("::",$line);
print "<br><br>"
and drop the matching '}' at the bottom.
You may want to hang on to these $chopped bits; if so, change the middle line above to
$array[]=$chopped=explode("::",$line);
and afterwards, $array[3][2] will be the $user listed on the fourth line of the file.