php中 include include_once require require_once异同

2024-04-30 11:58
文章标签 php 异同 include require

本文主要是介绍php中 include include_once require require_once异同,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.    include()函数会将指定的档案读入并且执行里面的程序

include("property.php");被导入的档案中的程序代码都会被执行,而且这些程序在执行的时候会拥有和源文件中呼叫到include()函数的位置相同的变量范围(variable scope)。你可以导入同一个服务器中的静态档案,甚至可以通过合并使用include()fopen()函数来导入其它服务器上面的档案。
2.    include_once()函数的作用和include()是几乎相同的

唯一的差别在于include_once()函数会先检查要导入的档案是不是已经在该程序中的其它地方被导入过了,如果有的话就不会再次重复导入该档案(这项功能有时候是很重要的,比方说要导入的档案里面宣告了一些你自行定义好的函数,那么如果在同一个程序重复导入这个档案,在第二次导入的时候便会发生错误讯息,因为PHP不允许相同名称的函数被重复宣告第二次)。
3.    require()函数会将目标档案的内容读入,并且把自己本身代换成这些读入的内容。

这个读入并且代换的动作是在PHP引擎编译你的程序代码的时候发生的,而不是发生在PHP引擎开始执行编译好的程序代码的时候(PHP 3.0引擎的工作方式是编译一行执行一行,但是到了PHP 4.0就有所改变了,PHP 4.0是先把整个程序代码全部编译完成后,再将这些编译好的程序代码一次执行完毕,在编译的过程中不会执行任何程序代码)。require()通常来导入静态的内容,而include()则适合用来导入动态的程序代码。

4.    如同include_once()函数,require_once()函数会先检查目标档案的内容是不是在之前就已经导入过了,如果是的话,便不会再次重复导入同样的内容。

5.   包含文件不存在或者语法错误的时候require是致命的,   include不是

6.   require是无条件包含也就是如果一个流程里加入require,无论条件成立与否都会先执行require  

7.   include有返回值,而require没有

8.   require函数通常放在   PHP   程序的最前面,PHP   程序在执行前,就会先读入   require   所指定引入的文件,使它变成   PHP   程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。  
9.    一般是放在流程控制的处理部分中。PHP   程序网页在读到   include   的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。

这篇关于php中 include include_once require require_once异同的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/948802

相关文章

PHP的基本语法有哪些?

PHP的基本语法包括以下几个方面: PHP标记:PHP脚本以<?php开始,以?>结束。这是PHP文件的默认文件扩展名是.php。 变量和常量:变量以$符号开头,其后是变量的名称。常量使用define()函数定义,例如define("常量名", 常量值);。 数据类型:PHP支持多种数据类型,如整型、浮点型、字符串型等。 注释:PHP支持单行注释(用//表示)和多行注释(用/* */表示

php json_encode 大括号中括号

当array是一个从0开始的连续数组时,json_encode出来的结果是一个由[]括起来的字符串。 而当array是不从0开始或者不连续的数组时,json_encode出来的结果是一个由{}括起来的key-value模式的字符串。 当字符串为[1,1,1] 这种模式时,json_decode默认解析出来的结果是一个数组。 当字符串为{"1":1,"2":1} 这种模式时,json_

PHP序列化用到的构造:__sleep() __wakeup()

串行化serialize可以把变量包括对象,转化成连续bytes数据. 你可以将串行化后的变量存在一个文件里或在网络上传输. 然后再反串行化还原为原来的数据. 你在反串行化类的对象之前定义的类,PHP可以成功地存储其对象的属性和方法. 有时你可能需要一个对象在反串行化后立即执行. 为了这样的目的,PHP会自动寻找__sleep和__wakeup方法.   当一个对象被串行化,PHP会

PHP生成csv格式Excel,秒级别实现excel导出功能

防止报超内存,兼容中文,兼容科学技术法。 爽。。。。很爽。。。。 /*** 告诉浏览器下载csv文件* @param string $filename*/public static function downloadCsv($data, $filename, $encoding = 'utf-8'){header("Content-type: text/csv");header("Conten

PHP 读取或生成大的Excel

场景,在很多情况下,需要读取Excel文件。 常用的有PHPExcel包或者使用 maatwebsite/excel 包 但是使用这个包读取或生成excel,如果excel文件过大,很容易出现超内存情况。 解决方法: 上传:要求上传者使用.csv 文件上传。然后使用php自带的 fgetcsv()函数来读取文件。http://php.net/manual/zh/function.fgetc

文件权限修改为777,php failed to open stream: Permission denied

记录一次在谷歌云上的异常诡异的事件: 环境 centos7.5 nginx php7.0 mysql 问题: 问题一 我用相同的nginx配置,只是修改了nginx root目录。 打开/var/www/html/ 这个目录就报 2018/06/22 04:35:03 [error] 15840#0: *438 FastCGI sent in stderr: “Primary scr

PHP ODBC:连接数据库的桥梁

PHP ODBC:连接数据库的桥梁 PHP ODBC(Open Database Connectivity)是一个允许PHP应用程序连接到各种数据库管理系统的扩展。它为PHP提供了一个标准的数据库访问接口,使得开发者可以编写不依赖于特定数据库系统的代码。本文将详细介绍PHP ODBC的概念、工作原理、使用方法以及在实际开发中的应用。 什么是PHP ODBC? PHP ODBC扩展使得PHP能

cookie 与html5 中的localstorage 与sessionstorage的异同

Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用 域,不可以跨域调用。 Web Storage拥有setItem,getItem,removeItem,clear等方法,操作简单 不像cookie需要前端开发者自己封装setCookie,getCookie。 Cookie

使用import和exec运行模块文件的异同

使用import和exec运行模块文件的异同 实例代码 #script1.pyimport sysprint(sys.platform)x = 'span'print(x*8) 在cmd中 >>> import script1win32spanspanspanspanspanspanspanspan >>> exec(open('script1.py').read())win

php 成员变量赋值用连接符报错

今天遇到一个问题,对类中的一个成员变量赋值,一直报错。就是一个常量连接一个字符串 class FileUploadController extends Controller{private $path = BASEDIR."/Public/Upload"; //上传文件保存你路径private $allowType = array('jpg','png','gif');