Blogger Information
Blog 42
fans 0
comment 0
visits 36476
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
匿名函数/命名空间/类与对象
庆选的博客
Original
732 people have browsed it

1、匿名函数

匿名函数:允许在声明函数时,不用书写函数名的函数。即是允许指定一个没有名称的函数。把匿名函数赋值给变量,通过变量来调用。

范例:

使用场景1:匿名函数对赋值给变量,通过变量来调用

 

实例

<?php


$a='***是中国的11';
$f1=function()use($a){
    return $a;
};
echo $f1();
echo '<hr>';

$f1=function($a){
    return $a;
};
echo $f1('你好中国');
echo '<hr>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png

场景2:通过在函数内调用匿名函数 实现简单的闭包

实例

<?php


function seek()
{
    $f2=function (){
        echo "世界还是那个世界,但中国不是那个中国了";
    };
    return $f2();

}
seek();

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png


场景3:通过关键词use($a)调用父域下参数$a 

实例

function seek1()
{
    $a="世界还是那个世界,但中国不是那个中国了2";
    $f2=function ()use($a){
        echo $a;
    };
    return $f2();

}
seek1();

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png


场景4:给匿名函数传参时,

处理:需要将普通函数赋值变量中,变量带参数,进而将变量传入匿名函数中

(备注:普通函数中没有参数声明,匿名函数中带参数声明)

实例

function seek2()
{
    $a="阿中";
    $f2=function ($b,$c)use($a){
        echo $a.'您好,'.$b.','.$c."一起守护它";
    };
    return $f2;

}
$f3=seek2();
echo '匿名函数传参:<br>';
$f3('你','我');

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png

2、命名空间:

样式:在php文件开头处命名(脚本的第一行代码
)。关键词:namespace

命名空间的意义:主要避免同名函数导致的报错,其次在于定位引用对应文件内的方法(保证唯一性)

访问时:

引用本方法内函数:namespace\方法名();

引用本文件下其他文件内方法:\引入文件内定义空间名\方法名();

实例

<?php
namespace hello;

include __DIR__ . '/inc/function.php';

function sum($a, $b)
{
    return $a + $b;
}

// \: 全局空间 即是namespace文件下全局下空间
echo namespace\sum(20, 30);
echo '<hr>';
// 访问 include __DIR__ . '/inc/function.php'中文件另外一个空间中的函数
echo \_929\sum(25, 6);

运行实例 »

点击 "运行实例" 按钮查看在线实例

3. 实例演示类与对象的关系与使用方式

实例

<?php
class Demo
{
    
    public $product = '手机';
    public $price = 2800;
}

//实例化类
$obj = new Demo();

//对类中成员属性进行操作 $obj->product='手机22';
$obj->product='手机22';
$obj->price='22';

// 2. 访问类中成员,用对象访问  $obj->product
echo '商品名称: ' . $obj->product, '<br>';
echo '商品价格: ' . $obj->price;

运行实例 »

点击 "运行实例" 按钮查看在线实例

4、总结命名空间的应用对象, 适用场景以及注意事项

1、命名空间需要放置在文件开头 第一行代码

2、命名空间的意义避免引入文件存在相同函数名导致报错,同是方便引用特定文件的方法。

 

Correction status:qualified

Teacher's comments:总结的到位, 就差一个实战了
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post