in reply to Re^4: Using <<EOL > output.out and EOL
in thread Using <<EOL > output.out and EOL

But just to clear up my head, |- means pipe the result of perl p_2.pl to open my $ph?

I would narrate that a little differently: 'In the script  p_1.pl, open a (pipe) handle named  $ph to the standard input of a  perl interpreter application that is started as a separate process and given the script  p_2.pl to interpret'. The data flow is all one-way:  p_1.pl to  p_2.pl via the  $ph pipe handle.

See Pipe Opens in perlopentut.