PHP version 8.0 - Named Parameters

Trong PHP 8, chúng ta có thể viết hàm sử dụng Named Parameters.

Ví dụ, giả sử bạn có một hàm add($id, $title, $quantity). Bạn có thể gọi hàm theo các cách sau:

add(id: 1, title: "Phone", quantity: 2);
add(title: "Phone", id: 2, quantity: 2);

Tham số được đặt tên: Tính năng này cho phép bạn thay đổi thứ tự của các tham số khi gọi hàm, miễn là bạn chỉ định đúng tên tham số như đã được định nghĩa trong hàm.

<?php

//Named Parameters: bạn có thể thay đổi thứ tự của các tham số, 
//miễn là bạn chỉ định tên của tham số đúng với tên trong định nghĩa của hàm

//Example 1: 
function createUser($name, $role = 'user', $isActive = true) {
    
    echo $name."-".$role;
}

createUser(name: 'Hòa Nguyễn', isActive: false, role:"admin");

//Example 2:
class CartService{
	
	public function add(int $id, string $title, bool $isActive = true) : string {
		return "$id, $title đã được thêm vào giỏ hàng";
	}
}

$cart = new CartService;
echo $cart->add(1, "Phone", true)."\n";
echo $cart->add(id: 2, isActive: true, title: "hoa")."\n";


//Example 3:
function sendEmail(string $from, string $to, string $subject, string $message,
 bool $isHtml = false) {
    echo "From: $from\n";
    echo "To: $to\n";
    echo "Subject: $subject\n";
    echo "Message: $message\n";
    echo "Is HTML: " . ($isHtml ? 'Yes' : 'No') . "\n";
}

//Gọi hàm với Named Arguments
sendEmail(
	from: "hoanguyen@example.com",
	to: "recipient@example.com", 
	message: "This is a test email. Hòa Nguyễn Coder", 
	subject: "Hòa Nguyễn Coder", 
	isHtml: true);

 

Bài Viết Liên Quan

x

Xin chào! Hãy ủng hộ chúng tôi bằng cách nhấp vào quảng cáo trên trang web. Việc này giúp chúng tôi có kinh phí để duy trì và phát triển website ngày một tốt hơn. (Hello! Please support us by clicking on the ads on this site. Your clicks provide us with the funds needed to maintain and improve the website continuously.)

Ngoài ra, hãy đăng ký kênh YouTube của chúng tôi để không bỏ lỡ những nội dung hữu ích! (Also, subscribe to our YouTube channel to stay updated with valuable content!)

Đăng Ký