批改状态:合格
老师批语:作业很认真, 代码写得也规范
<?php
//匿名函数,函数表达式
$product =function($a,$b){
return $a*$b;
};
//1.按值调用,值保存在$sum中
echo $product (3,6);
echo '<hr/>';
//回调函数:函数当做一个参数来使用的时候,这个函数叫做回调函数。
//匿名函数作为回调参数使用
//arithmeti普通函数
function arithmetic($functionName, $m, $n) {
return $functionName($m, $n);
}
//add作为回调函数
function add($m,$n){
return $m+$n;
};
$result = arithmetic("add",4,6);
echo $result;
echo '<hr/>';
//3.获取父作用域的变量,当做闭包
function demo(){
$name='小雷'; //$name为父函数变量
return function()use($name){
return $name;
};
}
echo demo()();
?>点击 "运行实例" 按钮查看在线实例

命名函数的意义:不同的php文件下面有相同的变量,命名空间可以把变量放进空间内,并且在其他空间内也是可以使用相同的变量。
inc文件夹function.php和demo2.php同样有f函数,要知道调用哪个,需要加上命名空间。
<?php
namespace hello;
include __DIR__.'/inc/function.php';
function f($a,$b){
return $a+$b;
}
// \:全局空间,namespace当前空间
echo \hello\f(30,50);
echo '<br>';
echo namespace\f(30,50);
//访问另外一个空间的函数
echo '<hr>';
echo \_0929\f(20,30);点击 "运行实例" 按钮查看在线实例

类和对象的关系:1、类是对象的模版,对象是类的实例;2、一个类可以创建多个对象,每个对象都是独一无二的。
使用方式:1.先用class XX{} 声明类,里面赋予对象的属性。实例化一个类,然后可以调用它的属性值。
<?php
namespace admin;
//类的声明:class
class phone
{
//属性
public $product='手机';
public $price=2800;
}
//类的实例化
$obj=new phone();
echo '商品名称:'.$obj->product,'<br>';
echo '商品价格:'.$obj->price;点击 "运行实例" 按钮查看在线实例
命名空间的应用对象:命名空间可以防止类,函数,全局变量的重名。
命名空间的适用场景:当一个项目有多个文件,且那些文件有重复的函数命名时,利用命名空间可以访问另外一个文件的同名函数。
注意事项: 1.\:全局空间,注意在空间前加入"\"。2.即使语法允许,不要在一个文件中声明多个命名空间。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号