Sách PHP/Hàm
Hàm là một tập hợp của nhiều dòng lệnh dùng để thực thi một việc
Dùng giống với C++. Ngoại trừ bạn không cần phải khai báo kiểu cho tham số của hàm:
Tham trị
sửaVD: function takes_array($input) {
echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}
Tham biến
sửafunction add_some_extra(&$string) { $string .= 'and something extra.'; }
Tham số có giá trị mặc định
sửafunction makecoffee ($type = "cappucino") { return "Making a cup of $type.\n"; } Chú ý : khi sử dụng hàm có đối số có giá trị mặc định, các biến này sẽ phải nằm về phía phải nhát trong danh sách đối số. VD : Sai function makeyogurt ($type = "acidophilus", $flavour) {
return "Making a bowl of $type $flavour.\n";
} Đúng ; function makeyogurt ($flavour, $type = "acidophilus") {
return "Making a bowl of $type $flavour.\n";
}
7.4 Giá trị trả lại của hàm: Có thể là bất kỳ giá trị nào, Tuy vây, không thể trả lại nhiều giá trị riêng lẻ nhưng có thể trả lại một mảng các giá trị. VD function small_numbers() {
return array (0, 1, 2);
}
Để trả lại một tham trỏ, bạn cần có dấu & ở cả khai báo của hàm cũng như ở giá trị trả lại. VD : function &returns_reference() {
return &$someref;
}
$newref = &returns_reference();
Các Loại Hàm
sửaHàm Không Trả Về Trị Giá
sửaHàm Trả Về Trị Giá
sửaHàm biến
sửaPHP cho phép sử dụng hàm giá trị Nghĩa là khi một biến được goi có kèm theo dấu ngoặc đơn , PHP sẽ tìm hàm có cùng tên với giá trị biến đó và thực hiện
<?php
function foo() {
echo "In foo()
\n";
}
function bar( $arg = ) {
echo "In bar(); argument was '$arg'.
\n";
}
$func = 'foo'; $func(); $func = 'bar'; $func( 'test' ); ?>