宝哥软件园

PHP/HTML混合编写四种方式总结

编辑:宝哥软件园 来源:互联网 时间:2021-09-06

作为一种后端语言,PHP不可避免地输出HTML代码,以便将其输出到浏览器进行呈现。下面是我用过的三种PHP/HTML混合编辑方法。

1.单引号/双引号括起来的方法

这是主要的方法,用法如下

?php回声!' doctype html html head title/title/head body span test page/span/body/html ';这是最简单的方法,只需用单引号括起来

至于双引号和单引号的区别,前者解析引号中的变量,后者不解析引号中的变量。请参见以下示例

?php $Content='Hello!';回显“$ Content”;echo“br”;回显“$ Content”;输出

1你好!2美元内容

可以看到,用双引号括起来的字符串中的变量名会自动解析为变量值,而当用单引号括起来时,变量名仍然会显示出来

这样写有两个缺点

1.如果输出包含单引号/双引号,处理起来会异常困难,因为PHP无法判断引号是属于程序还是输出内容,所以会报错

2.用这种方式编写的一些现代文本编辑器(如升华文本)将无法对引号包围的输出内容进行语法上的着色,如果出现一些格式问题将极难发现。图为升华文字3的截图,上面是正常的颜色,下面是被引号包围的颜色

2.使用HEREDOC/NOWDOC

HEREDOC和NOWDOC是PHP5.3支持的新功能,它允许用户定义的标识符包围程序中的文本。HEREDOC和NOWDOC的关系类似于双引号和单引号。前者解析块中的变量,而后者不解析块中的变量

以下描述了此文档和此文档的用法

?php $Content='Hello!';//下面写了一个HEREDOC,其中LABEL可以自定义为任意字符串,但要保证开头的标签和结尾的标签一样为echo LABEL $ Content LABEL//ending方法:开始一个新的行并给它贴标签。注意logo前后的结尾不要插入任何字符,空格也不要呼应‘br’;//为了演示,换行比较方便。//NOWDOC和HEREDOC的区别在于NOWDOC的标识符需要用单引号将echo‘LABEL’$ Content LABEL括起来;//其他东西都一样?你也可以参考PHP.net上关于这两个人的维基:https://wiki.php.net/rfc/heredoc-with-double-quotes

用HEREDOC/NOWDOC编写完美解决了引号括起来的问题,但仍然没有解决语法着色无效的问题

3.在HTML中嵌入PHP块(推荐)

这是一种非常适合的方法,而且这种方法在像WordPress模板这样的场合应用非常广泛。写起来也很方便,只需要把相关代码直接写在需要输出的地方就可以了,就像下面这样

?Php //首先,编写相关的调用代码函数输出title(){ echo ' test page ';}函数OutputContent(){ echo 'Hello!';}//然后调用下面的相关函数?DOCTYPE html html标题?PHP OutputTitle();/标题/头身跨度?PHP OutputContent();/span /body /html我认为这种方法是三种方法中最好的,但是这种方法的缺点是如果代码块太多,会严重影响程序的读取。

4.使用前端模板引擎

随着前端在整个Web开发中的重要性越来越大,前端/后端工程师逐渐分成两个职业。因此,为了保证前/后端工程师能够相互协作,让前端开发和后端开发开发出来的东西更加完善,一系列前端模板引擎,比如Smarty,已经逐渐衍生出来。Smarty编写的实现代码可读性很强,使得前端/后端的分离更加高效便捷。感兴趣的同学可以去搜索了解

以上四种PHP/HTML混合编写的方式总结为边肖分享的全部内容,希望能给大家一个参考和支持。

更多资讯
游戏推荐
更多+