为了实现公共代码的重用,可以从其他文件将对应的代码引入到当前脚本,从而不需要再次去写一些重复的代码。
PHP提供了四种方式,能够将其他PHP文件里的内容进行引入,加载到当前脚本。
Include()
Require()
Include_once()
Require_once()
文件加载
文件的加载到底能解决上面样的问题?
文件加载到底是如何工作的?
问题:如果被引入的文件出错了,系统会如和处理?
如果被引入文件的脚本出现错误(非致命错误),不会影响引入文件脚本的执行。致命错误会导致脚本中断执行。
Include和require有什么区别?
- 从整体来讲,两个都是实现将文件给加载到目标文件
- Include在进行文件加载的时候,有一些错误不会影响到目标文件的执行,但是如果使用require会导致致命错误,从而中断整个脚本的执行。
当去引入一个不存在的文件的时候,include只是显示警告,但是会继续执行脚本;require一定会去加载该文件,加载不到就会报一个致命错误,从而中断脚本的执行。
Include_once()和require_once()
保证文件在一个脚本里面只被加载一次
Include与include_once()的区别
加载文件的语法
Include(‘文件名’);
Include ‘文件名’;
在以后的代码中,会使用很多文件引入。
如何中断文件执行?
Exit(); exit的使用可以没有括号,exit;
Die();die的使用也可以没有括号,die;
Return
如果return是函数中使用,表示该函数终止执行,如果return后面有跟具体内容,返回该内容的意思
如果return是在脚本中使用,表示中断当前脚本的执行。
Return与echo的区别
Return指的是将后面的内容返回,只能返回给PHP脚本
Echo将后面跟的内容输出给浏览器,先放到程序缓存,等脚本结束(程序缓存满了),交给Apache
Demo11.php
强烈建议回去多看看demo11.php和demo12.PHP
通常,在一个脚本中使用return来终止脚本的执行,这种是小概率事件。因为一般脚本的包含,并不需要其返回值。但是有一个特例,是必须要求PHP文件有返回值的。对应的就是项目中的配置文件。
配置文件:用于控制系统中某些操作的变量,能够保证整个项目的统一和维护的友好性。
- php:连接数据库,mysql_connect(‘主机名:端口’,‘用户名’,’用户密码’)
- PHP:连接数据库,mysql_connect(‘主机名:端口’,‘用户名’,’用户密码’)
如果改成以下方式
Mysql_connect(从某个文件得到的主机名,用户名,用户密码);
PHP配置文件
Config.php
文件的路径管理
D:\server\apache\htdocs\20140618\demo12.php 绝对路径
Demo12.php 相对路径
绝对路径:从系统根目录(盘符)开始找到对应的文件,整个路径就是绝对路径
相对路径:相对于当前文件的目录
相对路径
./:当前目录
../:上级目录
/:表示网站根目录
../可以重复使用
文件引入的相对路径
当一个文件引入的另外一个文件,也同时还引入了其他的文件的时候,这个时候相对路径就会发生变化,相对路径的点就是以当前被请求的文件问起点
路径变化原理
注意:为了保证文件的引用不会出错,建议使用绝对路径。通常这个绝对路径不是说按照磁盘路径定义的,而是项目入口文件里定义的__DIR__
常用的字符串函数
Strlen:获得字符串长度
Substr:字符串截取,字符串的其实位置是0
Strtolower:字符串全小写
Strtoupper:字符串全大写
Strrev:反转字符串
Strpos:获得某个字符串第一次出现的位置
Strrpos:获得某字符串最后一次出现的位置
Strchr:获得字符第一次出现的位置,并返回位置到最后所有是字符串
Strrchr:获得字符最后一次出现的位置,并返回位置到最后所有的字符串
Trim:清楚字符串两遍的符号
用户提交用户注册信息的时候,使用trim将用户提交的数据进行去空格处理。
如何获取一个url请求文件的后缀名
时间相关函数
Time:获取当前时间的时间戳,整型
Date:对时间戳进行格式化,得到指定格式的数据
如果第二个参数(具体时间戳)不给的话,默认是当前时间的时间戳
Strtotime:将字符串转化成时间戳
Microtime:获得微秒时间,有两种结果:返回一个数组,或者一个字符串
数学相关函数
Abs:绝对值
Floor:向下取整
Ceil:向上取整
Round:四舍五入
Rand:获得一个随机数
mt_rand:获得一个随机数
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/2200.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除