Re: Anyone have a tool/script to convert <? to <?php (but not <?=)
| From: | Aziz Saleh | Date: | Fri, 14 Feb 2014 19:30:01 +0000 |
| Subject: | Re: Anyone have a tool/script to convert <? to <?php (but not <?=) | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-322871@lists.php.net to get a copy of this message | ||
On Fri, Feb 14, 2014 at 2:21 PM, Daevid Vincent <daevid@daevid.com> wrote:
> Try it...
>
> <?php $foo='bar'; ?>
> <?= $foo ?>
> <?=$foo?>
> <?echo 'i told you so';?>
> <?phpecho 'this one fails';?>
>
> The ONLY one that gives a parser error is the LAST one where yes, a space
> is required after a <?php
>
> That is NOT the case for <? or <?=
>
> > -----Original Message-----
> > From: Aziz Saleh [mailto:azizsaleh@gmail.com]
> > Sent: Friday, February 14, 2014 10:54 AM
> > To: Daevid Vincent
> > Cc: php-general@lists.php.net
> > Subject: Re: [PHP] Anyone have a tool/script to convert <? to <?php (but
> not
> > <?=)
> >
> > What I posted (and all the others) would work, replacing all instances of
> > "<? " (notice the space) with "<?php " should work, it will
> > leave all
> > existing <?= and <?php alone (since having a space after ? and before
> > =/php would produce a parser error.
> >
> > Not sure why you are saying that spaces are irrelevant thou.
> >
> >
> > On Fri, Feb 14, 2014 at 1:34 PM, Daevid Vincent <daevid@daevid.com>
> wrote:
> >
> > > *sigh*
> > >
> > > <?=$foo?> is perfectly valid so is <?=$foo;?> or any combination WITH
> > > SPACES OR NOT.
> > > If this were trivial, I wouldn't have asked the list. I've been coding
> PHP
> > > since 1996. ;-)
> > >
> > > So if you have <? you have to make sure it doesn't have a '=' after
> > > the
> > > '?' to convert to '<?php'
> > >
> > > Spaces are irrelevant and can NOT be relied upon as a unique feature.
> > >
> > > > -----Original Message-----
> > > > From: Daevid Vincent [mailto:daevid@daevid.com]
> > > > Sent: Wednesday, February 12, 2014 2:57 PM
> > > > To: php-general@lists.php.net
> > > > Subject: RE: [PHP] Anyone have a tool/script to convert <? to <?php
> (but
> > > not
> > > > <?=)
> > > >
> > > > Thanks guys for the replies so far, however, if it were a simple
> search
> > > and
> > > > replace I wouldn't have to ask ;-)
> > > >
> > > > The trick is that "<?=" is valid and legal and I want to keep
> > > > those.
> I
> > > only
> > > > want to change if they are specifically "<?"
> > > >
> > > > Maybe there is some regex guru out there that knows the magic
> > > incantation.
> > > >
> > > > Related, for extra credit it drives me bonkers to see this:
> > > >
> > > > Hello <?= $username; ?>
> > > >
> > > > Note the end semicolon on the variable. I'd want to strip all those
> off
> > > too,
> > > > but that is also not a trivial task if you think about it as it can
> only
> > > be
> > > > removed if proceeded with <?=
> > > >
> > > >
> > > >
> > > > --
> > > > PHP General Mailing List (http://www.php.net/)
> > > > To unsubscribe, visit:
> > > > http://www.php.net/unsub.php
> > >
> > >
> > > --
> > > PHP General Mailing List (http://www.php.net/)
> > > To unsubscribe, visit: http://www.php.net/unsub.php
> > >
> > >
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
I agree with the list you posted. However, if you try:
<? =$test;?>
or
<? php echo $test;?>
Both will parse out.
Which brings me back to the original regex:
'<? ' -> will match:
'<? ...'
and not any of the cases you posted, including:
'<?php'
or
'<?='
Then again, I didn't have my morning tea and could just be thinking of
something different!