Fn() PHP là gì?
Khi các chức năng mũi tên xuất hiện trong ECMA 6, chúng cho phép các nhà phát triển linh hoạt hơn nhiều khi sử dụng các chức năng. Đột nhiên, bạn có thể có các hàm ẩn danh cú pháp ngắn cũng kế thừa phạm vi gốc Show
PHP đã có phiên bản hàm mũi tên riêng trong phiên bản 7. 4, năm 2019. Hai điểm chính giống nhau - tôi. e. rằng chúng cho phép biểu thức hàm cú pháp ngắn và kế thừa phạm vi gốc - nhưng chúng cũng có một số khác biệt Trước tiên chúng ta hãy xem cú pháp. Trong PHP, các hàm mũi tên trông giống như thế này
Chú ý Bạn vẫn có thể thêm các liên kết loại/trả lại nếu muốn
Nhưng đây là nơi mà sự khác biệt bắt đầu. Ví dụ: bạn không thể bỏ qua dấu ngoặc đơn xung quanh các đối số như bạn có thể làm trong JavaScript nếu bạn chỉ chuyển một đối số duy nhất. Trong JavaScript, những điều sau đây là tương đương
Trong PHP, dấu ngoặc đơn là bắt buộc. Điều này có lẽ là để tách lập luận khỏi phần
Hơn nữa, các hàm mũi tên trong PHP chỉ có thể thực hiện các biểu thức đơn lẻ, không giống như trong JavaScript, nơi bạn có thể nhóm nhiều biểu thức lại với nhau thành một khối
Một sự khác biệt thú vị khác là, không giống như JavaScript, các hàm mũi tên trong PHP không thể sửa đổi các biến bên ngoài. Điều này là do chúng sử dụng cái được gọi là ràng buộc "theo giá trị" - nói cách khác, hàm mũi tên chỉ có quyền truy cập vào các bản sao của giá trị của các biến bên ngoài, thay vì tham chiếu đến chúng Vì vậy, điều này, ví dụ, không có tác dụng
Chúng ta có thể giải quyết vấn đề này theo cách thông thường, bằng cách buộc giá trị đến theo tham chiếu qua
Tôi hy vọng bạn tìm thấy sự so sánh này hữu ích Tôi đã giúp bạn?Xin chàoTôi là Andy, chuyên gia JavaScript, Vue và PHP đến từ Nottingham, Vương quốc Anh. Tôi chủ yếu viết blog về JavaScript. Hơn Hướng dẫn chuyên sâu
dự án
|