Re: string as file
| From: | Robert Cummings | Date: | Fri, 10 Aug 2007 15:41:41 +0000 |
| Subject: | Re: string as file | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-260596@lists.php.net to get a copy of this message | ||
On Fri, 2007-08-10 at 16:28 +0100, Stut wrote:
> Rick Pasotto wrote:
> > On Fri, Aug 10, 2007 at 02:19:29PM +0100, Stut wrote:
> >> Rick Pasotto wrote:
> >>> On Thu, Aug 09, 2007 at 03:25:27PM -0500, Greg Donald wrote:
> >>>> On 8/9/07, Rick Pasotto <rick@niof.net> wrote:
> >>>>> Does php have a facility similar to python's stringIO?
> >>>>>
> >>>>> What I'm wanting to do is similar to a mail merge. IOW, I know I can
> >>>>> create an include file like:
> >>>>>
> >>>>> $out = <<<EOT
> >>>>> This is an example of $var1 and $var2.
> >>>>> EOT;
> >>>>>
> >>>>> and then after assigning values to $var1 and $var2 include that
> >>>>> file. I can later use different values for $var1 and $var2 and get a
> >>>>> different $out with a second include.
> >>>> eval()
> >>> Explain.
> >>> One word responses really don't do any good.
> >>> Exactly *what* would be the argument to eval()?
> >> RTFM, that's what it's there for.
> >
> > I did. That's why I rejected the use of eval() before I posted the
> > message. eval() is totally unsuitable for what I want. Unless, that is,
> > you or Greg can explain how using eval() will get me what I want.
> >
> > I think that neither you nor Greg understands what I'm looking for.
> >
> > Instead of simply stating 'RTFM' perhaps *you* should RTFQuestion.
>
> Your original post asked...
>
> "Can I someout "include" a string instead of a file?"
>
> That's exactly what eval does. As for what you would pass to it... PHP
> code maybe? Have you even tried it? The manual page for eval has several
> examples of how to use it, and the comments have even more.
>
> >> Incidentally, eval is evil and potentially a giant security hole.
> >> You'd be better off doing replacements with preg_match rather than
> >> executing a string.
> >
> > Agreed. That's another reason I had already rejected it. Although in
> > this case, since I would have full control of all the variables, it
> > would probably be ok.
>
> Use regular expressions or straight string replacements - that's the
> best way to implement mail-merge type behaviour. Personally I used
> preg_replace with the 'e' modifier. For an example see, shockingly, the
> manual page for preg_replace.
>
> Now "go stick your head in a pig".
Spider-Pig, Spider-Pig, does whatever a Spider-Pig does...
:) I love Fridays!!
Cheers,
Rob.
--
...........................................................
SwarmBuy.com - http://www.swarmbuy.com
Leveraging the buying power of the masses!
...........................................................