Lambda ویژگی در پی اچ پی هستند که اجازه می دهد تا بدون به کار بردن کلاس Closure، بتوانیم تابع های بی نام تعریف کنیم که از این تابع های بی نام معمولا برای پارامترهای Callback کمک گرفته می شود. در پی اچ پی دارای ویژگی به نام تابع های بی نام (Anonymous Functions) است که این تابع های بی نام را Lmbda نیز می گویند که برای تعریف آنها از کلاس Closure کمک نمی گیریم. تعریف آنها تا اندازه ای همانند همان تابع هایی که پیش از این آموزش داده بودیم، به عبارت دیگر تعریف آنها با واژه کلیدی function شروع شده و دارای فهرست آرگومان های ورودی است، ولی دیگر نام برای آن تعیین نمی شود.

در کد شکل زیر یک تابع بی نام  تعریف شده است که یک آرگومان ورودی به نام name$ دریافت کرده. توجه کنید که تعریف تابع را به درون متغیر انتساب داده ایم، پس می بینیم که در خط های ۷ و ۹ نام متغیر را به صورت یک تابع معمولی فراخوانی کرده ایم و در هر دو فراخوانی یک رشته به آن فرستاده شده است.

در کد زیر جنبه های دیگری را نشان داده ایم. نخست بوسیله تابع ()gettype گونه متغیر greet$ نشان داده می شود و برابر با شکل دیگر، در این زمان گونه آن object (یعنی یک نمونه از کلاس یا یک شی) است. سپس بوسیله متد ()is_callable مشخص می کنیم که آیا متغیر greet$ می تواند به صورت قابل فراخوانی باشد. در پایان بوسیله ()get_class کلاس یک شی (در اینجا متغیر greet$) را نشان داده ایم که برابر با شکل خروجی، کلاس Closure نشان داده شده است.

همانطور که گفتیم، Lambda ها یا تابع های بی نام را می توانیم همراه با Callback ها به کار ببریم. نمونه ای کاربرد آنها در تعریف Route ها در فریم ورک هایی مانند لارول است. در شکل زیر نمونه ای از کاربرد تابع های بی نام به عنوان Callback در تعریف Route ها در لاراول نشان داده شده است. مورد دیگری که بسیار مهم است و نباید فراموش کنید، باید در پایان تعریف تابع بی نام، یک سمی کالن قرار دهید، زیرا باید پایان تعریف متغیری که به تابع بی نام اشاره می کند را مشخص کرده باشید.

لاراول -مفهوم Route

لاراول نوشتن Route

لاراول Route ها با پارامترهای اختیاری

لاراول – استفاده از عبارت با قاعده در Route