包括函数PHP

时间:2015-04-22 16:54:48

标签: php php-include

我有一个包含函数和css页面的Php文件。我正在尝试使用include函数来生成我的大多数html。我只是无法弄清楚如何让css文件在我所做的php include函数中。

<?phpe
    function HTMLStart( $Title)
    {
        echo "<!DOCTYPE html>\n";
        echo "<html>\n";
        echo "<head>\n";
        echo "      <title>".$Title."</title>\n";
        echo "      <link href=\ 'IncLab.css' type=\"text/css\" rel=\"Stylesheet\" />\n";
        echo "</head>\n";
        echo "<body>\n";
    }
?>

我遇到的问题是echo行:

echo "      <link href=\ 'IncLab.css' type=\"text/css\" rel=\"Stylesheet\" />\n";

我尝试使用双引号并收到错误,因此我尝试使用单引号作为&#34; IncLab.css并且没有错误。如果这是正确的做法,我受伤了。

另外,我在我的包含文件中创建了一个导航栏,但是我如何放入一个类(For CSS)以使我的链接正确排列。

<?php
    function PageNagivation()
    {
        echo "<!-- Nav of the page --> \n";
        echo "<nav> \n";
        echo       '<div class="nav-item float-left"> <a href="IncLabPage1.php">Page 1</a>';
        echo       '<div class="nav-item end-float"> <a href="IncLabPage2.php">Page 2</a>';
        echo "</nav> \n";
    }
?>

导航栏工作并显示但无法正确显示。我知道的问题在于代码的<div class....部分。我怎样才能让它发挥作用。谢谢。

5 个答案:

答案 0 :(得分:6)

对于引用问题,是的,在这种情况下使用单引号是完全可以接受的,这就是它们的用途。你正在逃避其中一个,你不需要这样做:

echo "<link href='IncLab.css' type='text/css' rel='Stylesheet' />\n";

要添加类,您只需将其输入HTML:

即可
echo '<div class="nav-item end-float myclass"> <a href="IncLabPage2.php">Page 2</a>';

或者,如果它存储在变量中:

echo '<div class="nav-item end-float '.$myclass.'"> <a href="IncLabPage2.php">Page 2</a>';

或者

echo '<div class="nav-item end-float $myclass"> <a href="IncLabPage2.php">Page 2</a>';

答案 1 :(得分:3)

更改这样的引号 -

echo "      <link href='IncLab.css' type='text/css' rel='Stylesheet' />\n";

您应该使用您回复的所有HTML来执行此操作,以保持代码清洁并简化故障排除。

答案 2 :(得分:2)

为什么不这样做,而不是单行的一个回声呢?

$sOutput = '<html>
            <head>
                <link href="IncLab.css" type="text/css" rel="Stylesheet">
                <!-- Any HTML you want to echo -->';

echo $sOutput;

或者更好,使用 heredoc 语法:

$sOutput = <<<EOT
<html>
<head>
   <link href="IncLab.css" type="text/css" rel="Stylesheet">
   <!-- Any HTML you want to echo -->
EOT;

在开始和结束时只是一个单引号,你甚至可以缩进它...而且你可以摆脱担心逃避这么多报价。

答案 3 :(得分:1)

通过适当利用PHP语言的“模板”部分,可以避免这样的问题。

<?php
    function HTMLStart( $Title)
    {
?>
        <!DOCTYPE html>
        <html>
        <head>
          <title><?php echo $Title ?></title>
          <link href="IncLab.css" type="text/css" rel="stylesheet"/>
        </head>
        <body>
<?php
    }
?>

答案 4 :(得分:0)

我不建议使用php回显html。但是,在您的代码中,您无法转义href = \&#39; ...只需使用单引号:

navigationBar={<Navigator.NavigationBar ...etc />}

关于导航,您不能关闭div。应该是这样的:

echo "      <link href='IncLab.css' type='text/css' rel='Stylesheet' />\n";

如果不知道你希望你的导航看起来像什么,而没有你正在调用的类的CSS,那么很难进一步协助。导航是一个无序列表,如下所示:

echo "<!-- Nav of the page --> \n";
echo "<nav> \n";
echo       '<div class="nav-item float-left"> <a href="IncLabPage1.php">Page 1</a></div>';
echo       '<div class="nav-item end-float"> <a href="IncLabPage2.php">Page 2</a></div>';
echo "</nav> \n";

CSS:

<ul class="nav">
    <li><a href="IncLabPage1.php">Page 1</a></li>
    <li><a href="IncLabPage2.php">Page 2</a></li>
</ul>