22

Tạo object không sử dụng class trong PHP

Được hỏi 1 năm trước  |  chỉnh sửa

Dear all, mình có một câu hỏi này mong mọi người trả lời giúp. Trong code của mình cỏ một hàm getCustomerDetails như sau:

function getCustomerDetails(CustomerParams $param) {
    User::checkPermission();
    if ($param->Id)
        return $customer = Customer::findBy($param->Id);
    ...
}

Trong đó biến $param có kiểu dữ liệu là một object của class CustomerParams và có các property khác nhau như age, username. Tuy nhiên, ở một đoạn code khác mình cần sử dụng hàm getCustomerDetails() ở trên để tìm customer với một ID. Do mình đã có sẵn giá trị ID của customer để tìm kiếm nên mình không muốn truyền tham số vào bằng cách tạo ra một object từ CustomerParamsclass nhưng vẫn đảm bảo tham số là một object này có property là Id thì phải làm thế nào?

1 Câu Trả Lời
30

Bạn có thể sử dụng chức năng type casting của PHP. Trong trường hợp của bạn có thể chuyển từ array sang object như sau:

$param = (object) [
  'age' => 22,
  'username' => 'test'
];
Trả lời 3 tuần trước

Trả Lời Cho Câu Hỏi