核心就是在当前1.php文件中通过一个函数把另一个文件2.php里面的代码在当前有那一个函数的文件1.php里面中执行。慢慢理解哈。 问题;那一个函数那么的神奇,到底是什么牛逼函数啊? 听我简短到来! 记住,写两个页面第一个1.php 第二个2.php
<?php
require "./2.php";
?>
<?php
echo "贵哥牛逼";
?>
我细一点把好吧 他分为路径相对路径与绝对路径 那问题来了,什么又是相对路径,什么又是绝对呢? 绝对是从盘开始,比如c盘d盘开始到目标的路径 其实一句话可以解释,相对路径是当前文件所在的路径(起点)相对于(怎么走?)目标路径(终点把) 相对于是我把你1.php作为(参考物)开始,看你怎么走到目标路径2.php终点
有没有什么东西能够知道当前路径呢?(不用看,直接运行就知道了呀陈业贵老师) 有,就是__DIR__,小写是dir,,是个字符串哦 代码演示一下把,各位
<?php
require __DIR__ ."/2.php";
echo(__DIR__);
?>
运行就懂了,兄弟们 问题为什么加/? 因为
为什么加空格? 因为这个一个魔术常量啊,不加空格吗?像你写sql语句一样能不加空格吗?挤在一起吗我的天,记住,不加会错哦
为什么要用.连接符? 因为他是字符串__DIR__啊啊,老哥
<?php
define('ROOT_PATH', __DIR__ ."\\");
echo(ROOT_PATH);
?>
问题?为什么使用两个//因为转义啊,两个能变成一个\嘛是吧
require的优点:意思必须。如果加载文件失败,会触发一个致命错误,终止程序的执行 include:意思包含。如果加载文件失败,会触发一个警告错误,不会种植程序的执行。
2.php
<?php
require './1.php';
?>
1.php
<?php
define('ROOT_PATH', __DIR__ ."\\");
echo(ROOT_PATH);
?>
效果:
requireyurequire_once的区分: require_once是require的另外一个版本,它要求,在加载文件的时候,同一个文件只加载一次。所 以在使用require_once的时候,它会先去判断当前文件是否已经被加载,如果被加载了,那么这个 文件就不会被加载。 通常情况下,我们并不会使用require_once,因为它要执行更多的步骤,消耗更多的性能。我们会 自己检查代码,不要重复加载就行了。 include_once 和 include的区别也在于此。 大白话:include_once同一个文件之加载一次,他执行会先判断是否这个文件已经执行过了,如果是抱歉,老子不干了哈哈哈是吧兄弟们
return的使用: 1.php
<?php
$gg=require "./2.php";
var_dump($gg);
?>
2.php
<?php
return array("username"=>"root","password"=>"123456");
?>
效果:
终止程序执行函数:
<?php
$a=1;
var_dump($a);
exit("终止吧,程序啊哈哈");
echo($a);
?>
php函数: 兄弟们,你们知道函数的核心是什么嘛? 是重复调用哦哈哈啊 但是只有定义才能调用哦 记住,在同一个文件中,定义是没有顺序的,那里都可以哦,但是开始得写在上下,不能写在函数内部哦哈哈哈 但是如果函数定义·在另一个php文件中,的通过加载函数才能调用哦哈哈哈哈
<?php
say();
function say()
{
echo "贵哥牛逼";
}
?>
<?php
$c=say(1,2);//实参,实实在在的数字
echo($c);
function say($a,$b)//形参,变化的数字
{
return $a+$b;
}
?>
执行流程:say(1,2);-----
function say($a,$b)//形参,变化的数字
{
return $a+$b;
}------
say(1,2);------
$c----echo($c);
好了自己去理解把-----为过程哈
形式参数可以设置默认值,如果实际参数不传入值,那么在函数执行的时候,会使用参数的默认 值。
<?php
function a($name="李文")
{
echo($name);
}
a();
?>
聪明的你们应该咋地结果了哈
参数支持 值传递 和 引用传递 默认情况下,参数的传递使用的是值传递,在函数内部修改参数,不会影响外部的变量。当然也 可以使用引用传递,在定义形式参数的时候,在参数前面加上&符号。 意思是默认是值来传递,也可以用引用传递,但是需要注意一个问题,就是要引用的话,前面加一个&
<?php
function a(&$name)
{
$name="陈业贵";
}
$name="李文";
a($name);
echo $name;
?>
结果为:陈业贵 为什么,因为 默认情况下,参数的传递使用的是值传递,在函数内部修改参数,不会影响外部的变量 但是引用传递会影响外面的变量的哈,所以为陈业贵哈
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有