php从静态资源到动态内容

1、从HTML到PHP

demo.php:后缀由html直接改为php,实际上当前页面已经变成了动态的php应用程序脚本

demo.php: 允许通过<?php ... ?>标签,添加php代码到当前脚本中

php标签内部代码由php.exe解释, php标签之外的代码原样输出,仍由web服务器解析

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title><?php echo '百变鹏仔' ?></title>

</head>

<body>

<p><?php echo '1.今天星期一' ?></p>

<p><?php echo '2.今天去钓鱼' ?></p>

<p><?php echo '3.今天很开心' ?></p>

</body>

</html>

php代码的详细解析过程

因为web服务器只能识别和处理html的内容, 遇到<?php ?>代码段统统不认识,全部转发给php解释器处理html与php混编:

如果想让web服务器能自动转发这些请求, 文档的扩展名就不能是.html, 必须是.php

遇到一个<?php ?>就转发一个cgi请求, 不管这些标签出现在当前文档的什么地方

请放心, 最终生成的,或者说用户最终看到的,仍然是一个html文档, php代码中的内容不会被泄漏的

2、php生成动态内容

对于动态内容,最直观的想法就是,把页面内容保存到变量中

php 是创建动态网站的编程工具, 页面内部如果全部写死, 不如直接创建html文档好了

php 中内容的动态化,最简单的方式就是创建变量来保存这些数据

<?php

$title = '百变鹏仔';

$conList = [

'今天星期一',

'今天去钓鱼',

'今天很开心'

];

?>

<html>

<head>

<meta charset="UTF-8">

<title><?php echo $title ?></title>

</head>

<body>

<?php

foreach(conList as key => $con){

echo '<p>' . (key + 1) . ':' . con . '<p/>';

}

?>

</body>

</html>

输出结果

1:今天星期一

2:今天去钓鱼

3:今天很开心

3、扩展(使用php循环结构的替代语法)

使用foreach替代语法,干掉大括号, 将大括号用冒号代替

<?php

$title = '百变鹏仔';

$conList = [

'今天星期一',

'今天去钓鱼',

'今天很开心'

];

?>

<html>

<head>

<meta charset="UTF-8">

<title><?php echo $title ?></title>

</head>

<body>

<!-- 将php与html代码混编的时候,大括号很容易造成配对错误,最好杜绝它 -->

<!-- 所以php的流程控制语句, 都提供了替代语法,用冒号代替大括号 -->

<!-- php是最优秀, 最原生的模板语言, 替代语法,让php更加的优雅的与html生活在一起 -->

<?php foreach (conList as key => $con): ?>

<p><?php echo (key + 1) . ':' . con ?></p>

<?php endforeach; ?>

</body>

</html>

相关推荐
BingoGo9 小时前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack9 小时前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo1 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack1 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack2 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo2 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack3 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理4 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
QQ5110082854 天前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
WeiXin_DZbishe4 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5