亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 21
粉絲 0
評論 0
訪問量 29600
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板
匿名函數(shù),命名空間,類的認識--------2019.09.29
刂艸亻的博客
原創(chuàng)
961人瀏覽過

匿名函數(shù),命名空間,類的認識

實例代碼

實例--匿名函數(shù)

<?php

//匿名函數(shù)與閉包
//php不區(qū)分匿名函數(shù)與閉包

//匿名函數(shù),本質(zhì)就是函數(shù)表達式
//應用場景-1:匿名函數(shù)作為值來使用
$sum = function ($a,$b){
    return $a+$b;
};
echo $sum(25,25);//50
echo'<hr>';


//匿名函數(shù)用在什么地方
//應用場景-2:作為回調(diào)參數(shù)來使用
//回調(diào):回頭調(diào)用---某一步先決條件執(zhí)行后再執(zhí)行的操作
$numberPlusOne = array_map(function($number) {
    return $number + 1;
}, [1, 2, 3]);
    //數(shù)組單元+1
print_r($numberPlusOne);//Array ( [0] => 2 [1] => 3 [2] => 4 )
echo'<hr>';
    //自定義排序
$arr = [9,6,3,8,5,2,7,4,1];
usort($arr,function($a,$b){
    return $a-$b;
});
print_r($arr);//Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 )
echo'<hr>';

//作用三-3:獲取父級作用域里的變量
    //匿名函數(shù)引用父級元素的的值
$name = 'xiong';
$fl = function()use($name){
    return $name;
};
echo $fl();
echo'<hr>';
// 案例
// 父級函數(shù)
function demo(){
    $name ='zhi';
     return function()use($name){
        return $name;
     };
}
echo demo()();//zhi
//函數(shù)的聲明: function func_name() {}
//函數(shù)的調(diào)用: func_name();
//
//參數(shù): 必選參數(shù),可選參數(shù)/默認參數(shù), 剩余參數(shù)
//
//匿名函數(shù)
//1. 值
//2. 回調(diào)
//3. 閉包

運行實例 ?

點擊 "運行實例" 按鈕查看在線實例

實例---命名空間及類的認識

<?php

// 命名空間
namespace _9029_1;
include __DIR__.'/inc/function.php';

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

//不帶命名空間
echo sum(20,30);//50  執(zhí)行的是當前命名空間下的sum(加法)函數(shù)

echo'<hr>';

//帶了關(guān)鍵字namespace時執(zhí)行的也是加法sum,代表namespace==\_9029_1  也就是當前的命名空間
echo namespace\sum(20,30);//50 執(zhí)行的是加法運算
echo'<hr>';
echo \_9029_1\sum(30,30);//60 執(zhí)行的是加法運算
echo'<hr>';
//引入其它空間的sum函數(shù)
echo \_0929_f\sum(30,15);//450  sum執(zhí)行的乘積運算
echo'<hr>';
// 命名空間---類似一棟樓里面可以有好多樓層。而每個樓層又可以有許多房間 
//例如一單元5樓501,502,503等等,你要去找 一單元503,只能先去找到一單元,然后去找5樓,最后找到503
namespace _1_501;
// 類的聲明:關(guān)鍵字 class
class D501
{
    // 一單元可以有501
    public $name = '一單元501';
}

namespace _2_501;
class D501
{
    // 二單元也可以有501
    public $name = '二單元501';
}

namespace _3_501;
class D501 
{
    // 三單元也可以有501
    public $name = '三單元501';
}

// 此時這個實例話在_3_501的命名空間下。所以只輸出了該空間下的那么屬性
// 通過new關(guān)鍵字來實例化類,成為對象,然后用對象去訪問類的屬性
$obj = new D501();
echo '我要去->'.$obj->name.'<br>';//我要去->三單元501

// 此時引入命名空間.。通過不同的命名空間,去實例化名稱相同的類,不會有沖突
$obj =  new \_1_501\D501();
echo '我要去->'.$obj->name.'<br>';//我要去->一單元501

$obj = new \_2_501\D501();
echo '我要去->'.$obj->name.'<br>';//我要去->二單元501

//命名空間的作用
//1,用來區(qū)分名稱相同的類,方法,變量或其它;
//2.起到了保護作用,在不同空間的數(shù)據(jù),不會互相干擾

// 類通過關(guān)鍵字 class 來聲明,首字母一般大寫 ,里面可以有屬性,方法等等
//一般情況下。想要訪問類中的屬性或方法,要先實例話類的對象,然后用對象利用->符號來訪問相應的成員;

運行實例 ?

點擊 "運行實例" 按鈕查看在線實例

總結(jié):

匿名函數(shù),本質(zhì)就是函數(shù)表達式

    1,可以賦值到變量上,按值調(diào)用,但要注意,此時它的類型是對象

    2,可以當成回調(diào)函數(shù)來執(zhí)行

    3.可以做為閉包使用

命名空間的作用
1,用來區(qū)分名稱相同的類,方法,變量或其它;
2.起到了保護作用,在不同空間的數(shù)據(jù),不會互相干擾

類通過關(guān)鍵字 class 來聲明,首字母一般大寫 ,里面可以有屬性,方法等等
一般情況下。想要訪問類中的屬性或方法,要先實例話類的對象,然后用對象利用->符號來訪問相應的成員;

批改狀態(tài):合格

老師批語:命名空間, 就是電話區(qū)號, 并無特別之處
本博文版權(quán)歸博主所有,轉(zhuǎn)載請注明地址!如有侵權(quán)、違法,請聯(lián)系admin@php.cn舉報處理!
全部評論 文明上網(wǎng)理性發(fā)言,請遵守新聞評論服務協(xié)議
0條評論
關(guān)于我們 免責申明 意見反饋 講師合作 廣告合作 最新更新
php中文網(wǎng):公益在線php培訓,幫助PHP學習者快速成長!
關(guān)注服務號 技術(shù)交流群
PHP中文網(wǎng)訂閱號
每天精選資源文章推送
PHP中文網(wǎng)APP
隨時隨地碎片化學習
PHP中文網(wǎng)抖音號
發(fā)現(xiàn)有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號

  • 登錄PHP中文網(wǎng),和優(yōu)秀的人一起學習!
    全站2000+教程免費學