0

I want to place a HTML code inside a $ variable. So, I have a "sidebar.html" file, which has just got various "{$test1}" "{$test2}" and so on.

I can't work out how to add the HTML code to that.

So in short, I want to have {$fleet} in the first HTML file, and in my php code, I need something like

$fleet = <div class="sidebar-content">
<div class="sidebar-header">Find a Fleet</div>
    <div class="sidebar-link">
    <a href="./index.php?a=profile&u=ObsidianFleet">Obsidian Fleet</a>
    <a href="./index.php?a=profile&u=startrekfreedom">Star Trek Freedom</a>
    </div>
<div class="sidebar-link">

</div>
</div>

}

Thanks in advance

1
  • 1
    What is a $ variable? Variables in PHP are all indicated by $. Commented Aug 23, 2013 at 21:54

5 Answers 5

4

You should use nowdoc:

$fleet = <<<'PHP_STR'
<div class="sidebar-content">
<div class="sidebar-header">Find a Fleet</div>
    <div class="sidebar-link">
    <a href="./index.php?a=profile&u=ObsidianFleet">Obsidian Fleet</a>
    <a href="./index.php?a=profile&u=startrekfreedom">Star Trek Freedom</a>
    </div>
<div class="sidebar-link">

</div>
</div>
PHP_STR;
Sign up to request clarification or add additional context in comments.

4 Comments

14 secs slower than ComFreek... :) yet, +1 for a good answer!
@alfasin Yup haha, but still slightly different (nowdoc vs. heredoc), both work depending on if the OP wants interpolation or not :)
@alfasin except his is more correct based on the original (hard to understand) question.
To add a point: Paulpro's solution will process faster because no parsing is involved, but as always: depends on the use case ;)
4

Do you want to assign a string value?

Try heredocs:

$fleet = <<<EOF <div class="sidebar-content">
<div class="sidebar-header">Find a Fleet</div>
    <div class="sidebar-link">
    <a href="./index.php?a=profile&u=ObsidianFleet">Obsidian Fleet</a>
    <a href="./index.php?a=profile&u=startrekfreedom">Star Trek Freedom</a>
    </div>
<div class="sidebar-link">

</div>
</div>
EOF;

Comments

1

You need to tell PHP that it is a string. Wrap the HTML with the single quote ' character:

$fleet = '<div class="sidebar-content">
<div class="sidebar-header">Find a Fleet</div>
    <div class="sidebar-link">
    <a href="./index.php?a=profile&u=ObsidianFleet">Obsidian Fleet</a>
    <a href="./index.php?a=profile&u=startrekfreedom">Star Trek Freedom</a>
    </div>
<div class="sidebar-link">

</div>
</div>';

Comments

1

As a string:

<?php
$fleet = '<div class="sidebar-content"> 
<div class="sidebar-header">Find a Fleet</div>
    <div class="sidebar-link">
    <a href="./index.php?a=profile&u=ObsidianFleet">Obsidian Fleet</a>
    <a href="./index.php?a=profile&u=startrekfreedom">Star Trek Freedom</a>
    </div>
<div class="sidebar-link">

</div>
</div>';
?>

Comments

1
$fleet = "<div class='sidebar-content'>
<div class='sidebar-header'>Find a Fleet</div>
    <div class='sidebar-link'>
    <a href='./index.php?a=profile&u=ObsidianFleet'>Obsidian Fleet</a>
    <a href='./index.php?a=profile&u=startrekfreedom'>Star Trek Freedom</a>
    </div>
<div class='sidebar-link'>

</div>
</div>

}";

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.