Re: break out of <?php... midway thru' an if { } statement ?
| From: | Joshua Kehn | Date: | Mon, 11 Oct 2010 23:20:27 +0000 |
| Subject: | Re: break out of <?php... midway thru' an if { } statement ? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-308641@lists.php.net to get a copy of this message | ||
If I'm understanding the question right, yes you can.
if($AlertUser2success != 0)
{
?>
<div class="pg_DIVmainText">
<img class="divBGgradient" style=""
src="images/BehindBox01.png" alt="" />
<div>
<?php include(); ?>
</div>
</div>
<?php
}
Regards,
-Josh
____________________________________
Joshua Kehn | Josh.Kehn@gmail.com
http://joshuakehn.com
On Oct 11, 2010, at 7:05 PM, Govinda wrote:
> Hi everyone,
>
> ------------------------------------- newbie preface -------------------------------------
> I finally got some time to come back to learning a little more PHP... and I am looking forward
> to lots more in coming months, with any luck. Anyway, as I was working towards the last deadline
> with the PHP project I was working on, I uncovered several issues I did not know the answer to.. and
> I just hacked around them to avoid taking more time while I was under the clock/meter. Now on my
> own time, I want to ask, so I learn more deeply what was more ideal understanding/technique.
> ------------------------------------- /newbie preface -------------------------------------
>
> Here's one of those Q's:
>
> I was working on a system ("MoveableType", A.K.A. "MT") that writes db data
> to static text files (web pages) whenever the CMS admin tells it to "publish". That
> system writes out the PHP code that I tell it to, in each page of the site. There was one place in
> my PHP code (marked with ***MT***, below) where I needed to include a chunk of data that would not
> be known (or written out) until the admin next published the page (i.e. I could not include the code
> inline). I needed to display it only in case of a PHP comparison evaluating to true. I was
> tempted to break out of PHP at that point, and then go back into PHP within that ***MT*** block
> itself, _only_ when/where in the few places that block needs PHP.. in order to reduce the head
> pressure (of the less-technical admin using the MT CMS) having to wade through so many PHP
> print/echo statements (I could not get heredoc to work right, but that is another topic/post ;-).
> But despite the temptation, I did not attempt that because I thought it might break the logic of the
> if { } . On the other hand, I vaguely remember reading something that made me think something like
> that is possible.. but I don't know where I saw it.
>
> To better summarize my Q:
>
> could the below "<mt:Var name="PageMoreNoCRLF">" (which contains a
> long block of HTML sprinkled with a little PHP whose contents are known only at runtime) be *broken
> out of* of the <?php ... ?> wrapper that surrounds the if { } statement, and have it still
> only get displayed on the final webpage when the if { } statement evaluates to true? The reason I
> want that is so that I can just keep the HTML straight and simple in that MT block, instead of using
> PHP string-printing statements to spit out it's mostly-pure-HTML contents. The admin using the
> system is using a WYSIWYG HTML editable textarea interface, kind of like FCKEditor.
>
> if($AlertUser2success != 0) {
> echo '<div class="pg_DIVmainText">'."\n";
> echo '<img class="divBGgradient" style=""
> src="images/BehindBox01.png" alt="" />'."\n";
> echo '<div>'."\n";
> /*--- here is the ***MT*** block/include ---> ---*/ <mt:Var
> name="PageMoreNoCRLF">
> echo '</div>'."\n";
> echo '</div>'."\n";
> } else {
> ...
>
> ------------
> Govinda
> govinda(DOT)webdnatalk(AT)gmail(DOT)com
>
>
>
>
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>