2011-11-12 16 views
80

Tôi muốn gọi hàm trong một tệp PHP từ tệp PHP thứ hai và cũng chuyển hai tham số cho hàm đó. Tôi có thể làm cái này như thế nào?Làm thế nào để gọi hàm của một tệp php từ một tệp php khác và chuyển các tham số cho nó?

Tôi rất mới với PHP. Vì vậy, xin vui lòng cho tôi biết, tôi nên bao gồm các tập tin PHP đầu tiên vào thứ hai?

Vui lòng chỉ cho tôi một ví dụ. Bạn có thể cung cấp một số liên kết nếu bạn muốn.

Trả lời

125

Có bao gồm tệp đầu tiên vào tệp thứ hai. Đó là tất cả.

Xem ví dụ dưới đây,

File1.php:

<?php 
    function first($int, $string){ //function parameters, two variables. 
    return $string; //returns the second argument passed into the function 
    } 
?> 

Bây giờ Sử dụng include (http://php.net/include) để bao gồm các File1.php để làm cho nội dung của nó có sẵn để sử dụng trong các tập tin thứ hai:

File2.php:

<?php 
    include 'File1.php'; 
    echo first(1,"omg lol"); //returns omg lol; 
?> 
+2

Để ngăn chặn truy cập trái phép vào nội dung tệp với tất cả các chức năng của bạn, hãy chôn các hàm (File1.php) phía trên DOCUMENT_ROOT và thay đổi quyền của nó thành 'rwxr-x - x'. –

+0

Cảm ơn, bạn đời! Trợ giúp lớn. – Felipe

23

file1.php

<?php 

    function func1($param1, $param2) 
    { 
     echo $param1 . ', ' . $param2; 
    } 

file2.php

<?php 

    require_once('file1.php'); 

    func1('Hello', 'world'); 

Xem manual

4

file thư mục:

dự án->

-functions.php

-main.php

functions.php

function sum(a,b){ 
return a+b; 
} 
function product(a,b){ 
return a*b; 
} 

main.php

require_once "functions.php"; 
echo "sum of two numbers ". sum(4,2); 
echo "<br>"; // create break line 
echo "product of two numbers ".product(2,3); 

Đầu ra là:

tổng của hai số 6 sản phẩm của hai số 6

Lưu ý: không viết công khai trước chức năng. Công khai, riêng tư, các công cụ sửa đổi này chỉ có thể sử dụng khi bạn tạo lớp.

+0

Tôi đã chia các chức năng của mình thành các tệp riêng biệt để bao gồm khi cần. – Leo

Các vấn đề liên quan