skillup

技術ブログ

PHP

PHPの無名関数+array系の関数

投稿日:

PHPの無名関数について。

PHP5.3.0以降で実装され、概念としては知っていましたが、あまり使ったことがありませんでした。

今開発しているPHPの案件で無名関数のソースをみたので、復習もかねてメモです。

無名関数とは?

基本的な使用法

その名のとおり、名前のない関数のことです。JavaScriptなんかでは大量にでてきますが、下記のようなソースです。別名クロージャーともいわれるようです。

http://php.net/manual/ja/functions.anonymous.php

array_map系

無名関数と同時に扱われやすい、array_map,array_walk,array_filter,array_column,array_reduceなど。

http://qiita.com/ArimaRyunosuke/items/6a76f21f9d79e8695fc7
http://qiita.com/asigochan/items/6e27405b6d385786c6c9

useを使ったバインディング

本来PHPは関数外の変数を使用することはできませんが、useを使うことで引数としてではなく、関数外の値を使うことができます。また参照渡しにすることで遅延バインディングも可能です。

http://hensa40.cutegirl.jp/archives/2436

-PHP

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPのPDFライブラリに関して。

今月PHPでPDFを出力する要件があったんで色々見てきましたので、まとめを。 昨年もちょっとやりましたが、色々と面倒です。 fpdfはかなり古くダメダメっぽいですね。昨年はじめにPDFを使う要件があっ …

no image

mb_convert_kanaによる半角濁点の処理

PHPネタです。 濁点を処理するときに、カナ本体と濁点が分離していることが多々あります。 一般的には濁点と文字自体を混合させるケースのほうが多いので統一する必要性があるでしょう。 これを1文字にまとめ …

no image

PHPの配列操作

ながらく放置してました・・・ PHPを久々にやったんですが、やっぱり配列の関数・ライブラリが充実している分、作業がサクサクすすみますね。配列の操作でいろいろと学ぶところがあったんで掲載します。 Con …

no image

herokuでのmb_convert_encoding

herokuにあげたアプリを起動しようとしたらmb_convert_encodingでundefinedエラーが帰ってきました。 どうやらマルチバイトのライブラリがないエラーのようですね。 といいつつ …

no image

PHPでの空白削除に関して

PHPで空白を削除する方法についてメモします。 trimについて 空白を削除する関数といえばtrimが何といっても一番有名でしょう。