Làm cách nào để chuyển chuỗi thành hàm trong PHP?

Theo mặc định, các biến PHP, nhưng không phải đối tượng, được truyền theo giá trị. Khi các biến PHP được truyền theo giá trị, phạm vi biến, được xác định ở cấp hàm được liên kết trong phạm vi của hàm. Việc sửa đổi một trong hai biến không có tác động

Hãy xem một ví dụ

Đầu ra sẽ như sau

  Function w3docs
  Global w3docs

Để truyền biến theo tham chiếu, cần thêm ký hiệu dấu và [&] trước đối số của biến

Một ví dụ về một chức năng như vậy sẽ như sau. hàm[ &$x ]

Phạm vi của các biến toàn cục và hàm trở thành toàn cầu. Lý do là chúng được xác định bởi cùng một tham chiếu. Do đó, sau khi thay đổi biến toàn cục, biến bên trong hàm cũng bị thay đổi theo.

Đây là một ví dụ rõ ràng

đầu ra sẽ là

  Function w3docs 
  Function w3docs
Các đối tượng PHP theo mặc định được truyền theo tham chiếu

Đầu ra sẽ như sau

1

Theo quy định, các biến PHP bắt đầu bằng dấu $ theo sau là tên biến

Khi gán một giá trị văn bản cho một biến, việc đặt dấu ngoặc kép xung quanh giá trị là cần thiết

Khác với các ngôn ngữ lập trình khác, PHP không có lệnh khai báo biến. Nó được tạo ra tại thời điểm một giá trị được gán cho nó lần đầu tiên

Trong PHP, biến là nơi chứa dữ liệu

Các biến PHP có thể có cả tên ngắn [ví dụ: x và y] và tên mô tả hơn [tên trái cây, tuổi, chiều cao, v.v.]

PHP có hơn 1000 hàm dựng sẵn có thể được gọi trực tiếp từ bên trong tập lệnh để thực hiện một tác vụ cụ thể

Vui lòng kiểm tra tài liệu tham khảo PHP của chúng tôi để biết tổng quan đầy đủ về các hàm tích hợp PHP

Các hàm do người dùng định nghĩa PHP

Bên cạnh các hàm PHP có sẵn, bạn có thể tạo các hàm của riêng mình

  • Hàm là một khối câu lệnh có thể được sử dụng lặp đi lặp lại trong một chương trình
  • Một chức năng sẽ không tự động thực thi khi tải trang
  • Một chức năng sẽ được thực hiện bởi một lời gọi đến chức năng

Tạo một hàm do người dùng định nghĩa trong PHP

Khai báo hàm do người dùng định nghĩa bắt đầu bằng từ function

cú pháp

hàm functionName[] {
mã được thực thi;
}

Ghi chú. Tên hàm phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới. Tên hàm KHÔNG phân biệt chữ hoa chữ thường

Mẹo. Đặt cho hàm một tên phản ánh chức năng của nó

Trong ví dụ bên dưới, chúng ta tạo một hàm tên là "writeMsg[]". Dấu ngoặc nhọn mở [ { ] cho biết phần đầu của mã chức năng và dấu ngoặc nhọn đóng [ } ] cho biết phần cuối của hàm. Hàm xuất ra "Xin chào thế giới. ". Để gọi hàm, chỉ cần viết tên của nó theo sau dấu ngoặc []

Thí dụ

hàm writeMsg[] {
tiếng vang "Xin chào thế giới. “;
}

writeMsg[];
?>

Tự mình thử »

Đối số chức năng PHP

Thông tin có thể được chuyển đến các chức năng thông qua các đối số. Một đối số giống như một biến

Các đối số được chỉ định sau tên hàm, bên trong dấu ngoặc đơn. Bạn có thể thêm bao nhiêu đối số tùy thích, chỉ cần phân tách chúng bằng dấu phẩy

Ví dụ sau có một hàm với một đối số [$fname]. Khi hàm familyName[] được gọi, chúng ta cũng chuyển một tên [e. g. Jani], và tên được sử dụng bên trong hàm, hàm này xuất ra một số tên khác nhau, nhưng họ bằng nhau

Thí dụ

hàm familyName[$fname] {
echo "$fname Tham chiếu
“;
}

familyName["Jani"];
familyName["Hege"];
familyName["Stale"];
familyName["Kai Jim"];
familyName["Borge"];
?>

Tự mình thử »

Ví dụ sau có một hàm với hai đối số [$fname và $year]

Thí dụ

function familyName[$fname, $year] {
echo "$fname Tham chiếu. Sinh năm $
“;
}

familyName["Hege", "1975"];
familyName["Stale", "1978"];
familyName["Kai Jim", "1983"];
?>

Tự mình thử »

PHP là một ngôn ngữ được gõ lỏng lẻo

Trong ví dụ trên, hãy lưu ý rằng chúng ta không cần phải cho PHP biết biến đó thuộc kiểu dữ liệu nào.

PHP tự động liên kết kiểu dữ liệu với biến, tùy thuộc vào giá trị của nó. Vì các kiểu dữ liệu không được đặt theo nghĩa chặt chẽ, nên bạn có thể thực hiện những việc như thêm chuỗi vào số nguyên mà không gây ra lỗi

Trong PHP 7, khai báo kiểu đã được thêm vào. Điều này cung cấp cho chúng tôi một tùy chọn để chỉ định loại dữ liệu dự kiến ​​khi khai báo một hàm và bằng cách thêm khai báo strict, nó sẽ đưa ra "Lỗi nghiêm trọng" nếu loại dữ liệu không khớp

Trong ví dụ sau, chúng tôi cố gắng gửi cả số và chuỗi tới hàm mà không sử dụng strict

Thí dụ

hàm addNumbers[int $a, int $b] {
trả về $a + $b;
}
echo addNumbers[5, "5 ngay"];
// vì nghiêm ngặt KHÔNG được bật "5 ngày" được đổi thành int[5] và nó sẽ trả về 10
?>

Tự mình thử »

Để chỉ định strict, chúng ta cần đặt declare[strict_types=1];. Điều này phải nằm trên dòng đầu tiên của tệp PHP

Trong ví dụ sau, chúng tôi cố gắng gửi cả một số và một chuỗi vào hàm, nhưng ở đây chúng tôi đã thêm khai báo strict

Thí dụ

hàm addNumbers[int $a, int $b] {
trả về $a + $b;
}
echo addNumbers[5, "5 ngay"];
// vì nghiêm ngặt được bật và "5 ngày" không phải là số nguyên, nên sẽ xảy ra lỗi
?>

Tự mình thử »

Tuyên bố strict buộc mọi thứ phải được sử dụng theo cách đã định

Giá trị đối số mặc định PHP

Ví dụ sau đây cho thấy cách sử dụng tham số mặc định. Nếu chúng ta gọi hàm setHeight[] mà không có đối số thì nó sẽ lấy giá trị mặc định làm đối số

Thí dụ

hàm setHeight[int $minheight = 50] {
echo "Chiều cao là. $minheight
“;
}

setHeight[350];
setHeight[];
setHeight[135];
setHeight[80];
?>

Tự mình thử »

Hàm PHP - Trả về giá trị

Để một hàm trả về một giá trị, hãy sử dụng câu lệnh return

Thí dụ

hàm tổng[int $x, int $y] {
$z = $x + $y;
trả về $z;
}

tiếng vang "5 + 10 = ". tổng[5, 10]. "
“;
tiếng vang "7 + 13 = ". tổng[7, 13]. "
“;
tiếng vang "2 + 4 = ". tổng[2, 4];
?>

Tự mình thử »

Khai báo kiểu trả về PHP

PHP 7 cũng hỗ trợ Khai báo kiểu cho câu lệnh return. Giống như với khai báo kiểu cho các đối số hàm, bằng cách kích hoạt yêu cầu nghiêm ngặt, nó sẽ đưa ra "Lỗi nghiêm trọng" đối với kiểu không khớp

Để khai báo kiểu cho hàm trả về, hãy thêm dấu hai chấm [ function0 ] và kiểu ngay trước dấu ngoặc nhọn mở [ function1 ] khi khai báo hàm

Trong ví dụ sau, chúng tôi chỉ định kiểu trả về cho hàm

Thí dụ

hàm addNumbers[float $a, float $b]. trôi nổi {
trả về $a + $b;
}
echo addNumbers[1. 2, 5. 2];
?>

Tự mình thử »

Bạn có thể chỉ định một kiểu trả về khác với kiểu đối số, nhưng hãy đảm bảo kiểu trả về là đúng

Thí dụ

hàm addNumbers[float $a, float $b]. int {
trả lại [int][$a + $b];
}
echo addNumbers[1. 2, 5. 2];
?>

Tự mình thử »

Truyền đối số theo tham chiếu

Trong PHP, các đối số thường được truyền theo giá trị, có nghĩa là một bản sao của giá trị được sử dụng trong hàm và biến được truyền vào hàm không thể thay đổi

Khi một đối số hàm được truyền theo tham chiếu, các thay đổi đối với đối số cũng thay đổi biến được truyền vào. Để biến một đối số của hàm thành một tham chiếu, toán tử function2 được sử dụng

Làm cách nào để chuyển một chuỗi vào một hàm trong PHP?

Để cho phép một hàm sửa đổi các đối số của nó, chúng phải được chuyển qua tham chiếu . $str = 'Đây là một chuỗi, '; .

Làm cách nào để chuyển giá trị chuỗi trong mảng trong PHP?

Biểu thức sau chuyển chuỗi sang phương thức này mà không chuyển đối số độ dài. $my_array1 = str_split[$my_string]; Theo mặc định, nếu bạn không vượt qua dấu phân cách độ dài, thì nó sẽ lấy giá trị đó là 1. Vì vậy, nó chuyển đổi các phần tử riêng biệt của chuỗi thành các phần tử mảng.

Làm cách nào để lấy giá trị từ chuỗi trong PHP?

Hàm strval[] trả về giá trị chuỗi của một biến.

Làm cách nào để chuyển tham số trong PHP?

Phân tách các tham số bằng dấu phẩy [ , ]. Kể từ PHP 8. 0, danh sách tham số có thể có dấu phẩy ở cuối [ , ] mà trình thông dịch PHP bỏ qua. Theo mặc định, các đối số được truyền theo giá trị trong PHP. Thêm tham số bằng dấu và [ & ] để truyền đối số theo tham chiếu .

Chủ Đề