PHP函数array_map函数
在这介绍一个PHP语言里比较常用的数组操作函数,array_map函数,当我第一次接触到这个函数时,对这个函数的强大功能所震慑,也越发感觉PHP语言的好玩之处。
说明
了解PHP函数的最好的去处就是PHP手册,PHP手册上的关于此函数的说明:
array array_map ( callable $callback , array $arr1 [, array $... ] )
array_map() 返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的单元。callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。就是说将$arr1数组的每个单元的值,通过回调函数作用后存储进一个新的数组作为新数组的对应单元的值而还有个厉害的地方是这个函数可以传入多个数组,也就是在你定义的回调函数中可以同时对多个数组的每个单元的值同时操作
操作范例
例子1:<?php function cube($n){ return $n*$n;}$num = array(1,2,3,4,5);var_dump(array_map("cube", $num)); 输出:array(5) { [0]=> int(1) [1]=> int(4) [2]=> int(9) [3]=> int(16) [4]=> int(25) }
例子2(匿名函数也有效):<?php $func = function($n,$m){ return ("这个数组的第 $n 个位置的值是 $m <br>");};$a = array(1, 2, 3, 4, 5);$b = ['整型:1','整型:2','整型:3','整型:4','整型:5'];var_dump(array_map($func,$a,$b));输出:array(5) {[0]=> string(55) "这个数组的第 1 个位置的值是 整型:1 "[1]=> string(55) "这个数组的第 2 个位置的值是 整型:2 "[2]=> string(55) "这个数组的第 3 个位置的值是 整型:3 "[3]=> string(55) "这个数组的第 4 个位置的值是 整型:4 "[4]=> string(55) "这个数组的第 5 个位置的值是 整型:5 "}
注意第二个例子中的匿名函数里的语句必须使用双引号,因为其中包含$n,$m两个传参,而在PHP中,双引号内的字符会被分析器进行一遍解析,这样才能将其中的参数代表的值解析出来。
最后是从事数据开发时经常会碰到的问题,本人是在laravel框架下进行PHP开发,在利用其中的数据模型取数据时会出现一种情况,取出的数据是返回的对象类型(ObjClass),此时是无法直接利用键取出某一数据的,此时一般采用的方法是利用json_decode()方法,将其参数设为true时可返回数组类型的数据,但是此时返回的数组则是一个两层次的数组,就像
$arr = array( 0 => array( 'id' => 11111 ), 1 => array( 'id' => 22222 ), 2 => array( 'id' => 33333 ));
此时可以用foreach取出id,但是也可以用array_map()方法
$id_arr = array_map(function($v) { return $v['id'];}, $arr);输出:array(3) {[0]=> int(111) [1]=> int(222) [2]=> int(333) }
不过foreach遍历数组也很快,这两种方法就是看个人意愿了

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

PHP客戶端URL(curl)擴展是開發人員的強大工具,可以與遠程服務器和REST API無縫交互。通過利用Libcurl(備受尊敬的多協議文件傳輸庫),PHP curl促進了有效的執行

您是否想為客戶最緊迫的問題提供實時的即時解決方案? 實時聊天使您可以與客戶進行實時對話,並立即解決他們的問題。它允許您為您的自定義提供更快的服務

文章討論了PHP 5.3中介紹的PHP中的晚期靜態結合(LSB),允許靜態方法的運行時間分辨率調用以更靈活的繼承。 LSB的實用應用和潛在的觸摸

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...
