Làm cách nào để trả về nhiều giá trị trong PHP?
Hai biến không thể được trả về rõ ràng, chúng có thể được đặt trong cấu trúc dữ liệu danh sách/mảng và được trả về Show Thí dụBản thử trực tiếp function factors( $n ) { // An empty array is declared $fact = array(); // Loop through it for ( $i = 1; $i < $n; $i++) { // Check if i is the factor of // n, push into array if( $n % $i == 0 ) array_push( $fact, $i ); } // Return array return $fact; } // Declare a variable and initialize it $num = 12; // Function call $nFactors = factors($num); // Display the result echo 'Factors of ' . $num . ' are: đầu raĐiều này sẽ tạo ra đầu ra sau - Factors of 12 are: 1 2 3 4 6 dòng 3. chúng tôi có một hàm gọi là tính toán và nó chấp nhận 2 đối số mà chúng tôi đang gán cho các biến $number1 và $number2 dòng 5. chúng tôi đang thêm 2 số và gán câu trả lời cho $add dòng 6. chúng tôi đang trừ 2 số và gán câu trả lời cho $subtract dòng 7. chúng tôi đang nhân 2 số và gán câu trả lời cho $multiply dòng 8. chúng tôi đang trả về một mảng với 3 câu trả lời Dòng 12. chúng ta in mảng trả về sau khi gọi hàm tính toán với đối số 3 và 5 Đầu ra sẽ trông như thế này Chúng ta có thể thấy 3 câu trả lời từ cộng, trừ và nhân 3 và 5 Để xuất kết quả theo cách đẹp hơn, chúng ta có thể làm một cái gì đó như thế này Đầu ra sẽ là Chúng tôi thậm chí có thể tạo một vòng lặp và làm điều gì đó như thế này Điều quan trọng cần nhớ là vị trí mảng bắt đầu từ 0, không phải 1 Ở dòng 13 tôi đã khai báo một mảng khác để lưu trữ các toán tử Ở dòng 16, tôi đã bắt đầu một vòng lặp đơn giản để xem qua từng câu trả lời và lặp lại kết quả. Điều này hoạt động vì tôi biết những toán tử nào trong hàm Có nhiều cách khác chúng ta có thể tiếp cận vấn đề này. nhưng, tại sao lại làm cho mọi thứ trở nên phức tạp hơn mức cần thiết Theo truyền thống, các hàm trong PHP cho phép bạn chỉ trả về một giá trị tại một thời điểm. Tuy nhiên, đôi khi bạn có thể cần trả về nhiều giá trị từ một hàm. May mắn thay, có một vài cách giải quyết để trả về nhiều giá trị trong PHP 1. Sử dụng một mảngCách giải quyết đầu tiên là sử dụng một mảng để lưu trữ tất cả các trường bắt buộc và trả về mảng đó từ hàm. Ví dụ: giải pháp sau lưu trữ tất cả các giá trị sẽ được trả về trong một mảng và trả về giá trị đó từ hàm. Sau đó, nó sử dụng cấu trúc danh sách để truy cập các giá trị mảng. 1 2 3 4 5 6 7 8 9 10 11 12 13 hàm getAddress() { trả về mảng('221B', 'Baker Street', 'London', 'United Kingdom'); }
list($flat, $street, $city, $country) = getAddress(); echo "$flat $street, $city, $country";
/* đầu ra. 221B Phố Baker, Luân Đôn, Vương Quốc Anh */ ?> Tải xuống Chạy mã 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 hàm getAddress() { trả về mảng('Phẳng' => '221B', 'Street' => 'Baker Street', 'Thành phố' => 'Luân Đôn'<, 'Quốc gia' => 'Vương quốc Anh' ); }
$result = getAddress(); echo "{$result['Flat']} {$result['Street']}, {$result['City']}, {$result[';
/* đầu ra. 221B Phố Baker, Luân Đôn, Vương Quốc Anh */ ?> Tải xuống Chạy mã 2. Sử dụng một đối tượngThay vì trả về một mảng, bạn cũng có thể trả về một đối tượng từ hàm. Để chứng minh, đoạn mã PHP sau đây tạo một thể hiện của lớp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 hàm getAddress() { $obj = mới stdClass; $obj->bằng phẳng = '221B'; $obj->đường = 'Baker Street'; $obj->thành phố = 'London'; $obj->quốc gia = 'United Kingdom'; return $obj; }
$address = getAddress(); echo "$address->flat $address->street, $address->city, $address->country";<
/* đầu ra. 221B Phố Baker, Luân Đôn, Vương Quốc Anh */ ?> Tải xuống Chạy mã 3. Chuyển qua tham chiếuCuối cùng, bạn có thể truyền nhiều giá trị cho hàm theo tham chiếu, điều này cho phép hàm sửa đổi biến. Tất cả các thay đổi được thực hiện đối với biến tham chiếu bên trong hàm sẽ được phản ánh trong chính biến ban đầu. Giải pháp sau đây trình bày cách khai báo các tham số hàm dưới dạng tham chiếu. Lưu ý rằng không có dấu hiệu tham chiếu nào trong lệnh gọi hàm mà chỉ có trên các định nghĩa hàm Tôi có thể trả về nhiều giá trị từ một hàm trong PHP không?Một hàm không thể trả về nhiều giá trị , nhưng có thể thu được kết quả tương tự bằng cách trả về một mảng.
Làm cách nào tôi có thể trả về nhiều giá trị?Bạn có thể trả về nhiều giá trị bằng cách gộp các giá trị đó vào một từ điển, bộ hoặc danh sách . Các loại dữ liệu này cho phép bạn lưu trữ nhiều giá trị tương tự. Bạn có thể trích xuất các giá trị riêng lẻ từ chúng trong chương trình chính của mình. Hoặc, bạn có thể chuyển nhiều giá trị và phân tách chúng bằng dấu phẩy.
Phương thức có thể trả về nhiều giá trị không?Bạn chỉ có thể trả về một giá trị trong Java. Nếu cần, bạn có thể trả về nhiều giá trị bằng cách sử dụng mảng hoặc đối tượng .
Làm cách nào để kiểm tra nhiều giá trị trong điều kiện if trong PHP?nếu. câu lệnh khác - thực thi một số mã nếu điều kiện là đúng và mã khác nếu điều kiện đó sai. nếu. khác. câu lệnh khác - thực thi các mã khác nhau cho hơn hai điều kiện. câu lệnh chuyển đổi - chọn một trong nhiều khối mã sẽ được thực thi. |