本篇文章主要讲解不使用任何模板引擎来渲染页面数据的原生php方式.
1.输出数据
可以使用 以下两种方法:
<div><?= $title ?></div>
<div><?php echo $title ?></div>
案例:
2.foreach循环渲染数据
1.遍历数组
1.1 普通的索引数组
<?php $result as $arr ?>
1.2 带下标的数组
解析: 这个案例定义的数组是以字段名为下标,但记住它不是js中的对象,仍然是个数组。那么在对这个包含二维数组进行遍历的时候,第一次循环获取每个数组的值,然后对值进行判断它是否仍然是数组,如果不是直接输出.如果是的话,就对这个数组做第二次遍历,此时写法有点改变:
foreach($result as $key => $value)
通过这种方式遍历,不仅可以获取数组的的下标,还可以得到对应下表的值.
注意:在双引号下的字符串中是可直接输出变量值的.
变种:
注意:这种数据格式有点像js中的对象数组,但是在php中它就是个二维数组,和对象没有什么关系
1.3 对象数据渲染
注意:渲染对象的属性值用 -> 符号
1.4 如何获取循环的次数
注意:php中字符串可以通过.进行连接
2.选择结构
2.1 if结构
2.2 switch结构
3.php页面中经常会用到的一些函数
3.1
<?php use \LeanCloud\User;?>
use后面调用不是文件名,而是定义的命名空间下某个类名某个方法
3.2
<script type="text/javascript">
var origin_images = <?=json_encode($goods->get('images'))?>;
var origin_detail = <?=json_encode($goods->get('detail'))?>;
</script>
json_encode() 对变量进行JSON编码
json_decode() 对JSON数据进行解码,转换为PHP变量
3.3
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?>
defined() 函数检查某常量是否存在。如果常量存在,则返回 TRUE,否则返回 FALSE。
exit() 函数输出一条消息,并退出当前脚本。
3.4
<?php if (isset($error['file']) ): ?>
<p style="margin-left:10px">
File: <?php echo $error['file'] ?><br />
Line: <?php echo $error['line'] ?><br />
Function: <?php echo $error['function'] ?>
</p>
<?php endif ?>
isset函数是检测变量是否设置。
若变量不存在则返回FALSE
若变量存在且其值为NULL,也返回FALSE
若变量存在且值不为NULL,则返回TURE
empty()函数 检查一个变量是否为空
若变量不存在则返回TRUE
若变量存在且值为""、0、"0"、NULL、、FALSE、array()、var $var;以及没有任何属性的对象,则返回TURE
若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var;以及没有任何属性的对象,则返回FALSE
3.5
count()
计算数组中的单元数目或对象中的属性个数
var_dump()
打印变量的相关信息,可以打印多个变量,用”,”逗号隔开
date( )
echo date(“Y-m-d H:i:s”); 输出时间,可改为Y年m月d日
time( )
时间戳 1970年到当前的秒数(js是毫秒)
3.6
include “include/conn.php”;
requrie “include/conn.php”;
include与require都是引入公共的文件,比如页面上的公共头部和尾部.
include() 函数会将指定的档案读入并且执行里面的程序,被导入的档案中的程序代码都会被执行,而且这些程序在执行的时候会拥有和源文件中呼叫到 include() 函数的位置相同的变量范围
require()函数会将目标档案的内容读入,并且把自己本身代换成这些读入的内容。
总结:
require() 通常来导入静态的内容,而 include() 则适合用来导入动态的程序代码
$id = 1;
include('test.php');
在你的test.php里面可以直接使用$id 这个变量值
include和include_once对比:
include_once() 函数会先检查要导入的档案是不是已经在该程序中的其它地方被导入过了,如果有的话就不会再次重复导入该档案
require和require_once对比:
require_once() 函数会先检查目标档案的内容是不是在之前就已经导入过了,如果是的话,便不会再次重复导入同样的内容