no never, I understand everything :-)
fpassthru prints already, so there is no need to "echo $all"
the extra number is printed because you tell it to print it
Didn't you notice that the 'extra' number printed is the filesize of the file you printed? fpassthru returns the size of the file processed, not the file itself.
So when you say:
$all = fpassthru($f_result);
that already prints the file.
And when you say
echo "$all";
it prints the extra number.