PHP定界符php和html代码混编方法实例详解
发布:smiling 来源: PHP粉丝网 添加日期:2024-03-16 13:35:05 浏览: 评论:0
PHP定界符的运用,极大地方便了PHP和html混编的结构,因为在定界符中可以包括变量函数和html代码,而且可以正常解析。不用对字符串进行转义,可以是多行字符串。
PHP定界符是一种用于在字符串中定义大段代码的语法结构,它有三种形式:
一、 HEREDOC(<<<)定界符
HEREDOC被称为“长字符串常量”,用于包含多行字符串。格式如下:
- $string = <<<EOT
- 这是一段多行字符串
- 可以包含变量以及任何其他语法
- EOT;
在这个例子中,HEREDOC开始于"<<<EOT",结束于"EOT;",三个EOT之间的所有内容都是字符串,可以包含变量以及其他语法。
在PHP中,HEREDOC(Here Document)是一种用于创建多行字符串的语法结构。它允许您通过指定一个标识符来引用字符串。<<<是HEREDOC的定界符,用于指示开始和结束标识符之间的字符串是HEREDOC类型的。
下面为大家写几个示例代码:
1. 使用字符串字面量替换`<<<`:
- $name = <<<EOT
- Hello, world!
- This is a sample string.
- EOT;
在这个示例代码中,使用双引号包围的字符串字面量替换<<<,并在末尾添加了换行符EOT;作为结束标识符。
2. 使用自定义标识符:
- $greeting = <<<Greetings
- Hello, $name!
- Greetings;
上述代码中,使用自定义的标识符Greetings来引用字符串。标识符可以是任何有效的PHP标识符,但通常建议使用有意义的名称。
3. 嵌套使用HEREDOC:
- $message = <<<EOT
- Hello, $name!
- This is a sample message.
- Here's a list of fruits:
- $fruits
- EOT;
上述代码中,在字符串中使用另一个HEREDOC来创建嵌套的字符串。这允许您在字符串中嵌入多行文本。
二、 NOWDOC(<<<'标识符')
NOWDOC与HEREDOC非常相似,但不会解析变量和特殊字符。NOWDOC是PHP中的另一种字符串语法结构,类似于HEREDOC,但不会解析其中的变量。NOWDOC使用单引号来定界字符串,并在`<<<`后的标识符前加上单引号。格式如下:
- $string = <<<'EOT'
- 这是一段多行字符串
- 不会解析包含在字符串中的任何变量或特殊字符
- EOT;
注意到这里的标识符是用单引号包裹的,它与下面的纯文本是完全相同的。与HEREDOC不同,NOWDOC不会替换其中的变量或转义任何特殊字符。
1. 基本示例:
- $message = <<<'EOT'
- Hello, world!
- This is a sample string.
- EOT;
2. 使用自定义标识符:
- $greeting = <<<'Greetings'
- Hello, $name!
- Greetings;
在这个示例代码中,使用自定义的标识符Greetings来引用字符串。与NOWDOC一样,其中的变量不会被解析。
值得注意的是,由于NOWDOC不会解析字符串中的变量,因此您无法在其中引用或嵌入变量。如果需要在字符串中使用变量值,应该使用HEREDOC。所以NOWDOC适用于那些不需要解析变量的情况。使用单引号定界符的NOWDOC语法可以确保字符串中的文本保持原样,不会被解析或替换为变量值。
三、短标签写法(<?= ?>)
短标签写法允许PHP代码直接嵌入HTML中,使用"<?="输出变量的值。例如:
<?= $variable; ?>
在这个例子中,"$variable"的值将被输出到HTML页面中。请注意,您必须启用短标签才能使用它,通过在php.ini文件中将short_open_tag选项设置为"on",或者在代码中使用"<?php"标记。
四、使用<?php"标记
在html代码中嵌入php代码,这种方法比较好用,但是代码看起来会比较乱!
- <?php
- $nus=rand(1,10);//赋值变量为0到10的随意数字
- ?>
- <html>
- <head>
- <title>html中嵌入php代码</title>
- </head>
- <body>
- 随机数值是:<?php echo $nus;?>
- </body>
- </html>
注意,php代码不会在html文件中被解释,但是html代码可以在php文件中使用!
五、把html代码赋值给php变量
在php代码中,把html代码赋值给php变量也可以实现混编。
示例1:
- <?php
- $html = '<html>' ;
- $html .= '<head>' ;
- $html .= '<title>你好html</title>' ;
- $html .= '</head>' ;
- $html .= '<body>' ;
- $html .= '<center>这就是输出php变量$html的效果!</center>' ;//这里的$html在单引号内,不会被解释,会被视为字符串直接输出!
- $html .= '</body>' ;
- $html .= '</html>' ;
- echo $html;
- ?>
示例2:
- <?php
- $html = '//注意这里下一行起
- <html>
- <head>
- <title>你好html</title>
- </head>
- <body>
- <center>这就是输出php变量$html的效果!</center>
- </body>
- </html>
- ';//html代码到这里结束,这样的效果和使用HEREDOC(<<<)定界符的效果是一样的!
- echo $html;这里的输出内容与示例1是一样的!
- ?>
六、总结
在使用PHP开发项目的时候,使用php与html代码混编是一件非常常见的事情,体现出php语言的灵活性。你可能会好奇,为什么我们在使用dz、zblog、织梦建站的时候,php文件里没有看到html代码。那是因为他们采用了模板分离的方法,把php文件和html分开出来编写代码,然后再通过php把html文件转换成php与html代码混编的逻辑代码,最终都是以html的形式呈现网站内容!如果你也希望php代码和html分开编写使用,你可以去找一款合适自己的模板引擎来帮助你达到该目的!
Tags: PHP定界符 php和html代码混编
- 上一篇:使用PHP解决http请求超时的问题
- 下一篇:最后一页
相关文章
- ·php定界符<<<使用技巧和实例(2021-02-22)
- ·PHP定界符的使用及注意事项(2022-04-09)
- ·php的定界符<<
(2022-06-28)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)