วิธีเรียกใช้ฟังก์ชันของไฟล์ php หนึ่งไฟล์จากไฟล์ php อื่นและส่งผ่านพารามิเตอร์ไปยังไฟล์นั้นได้อย่างไร


125

ฉันต้องการเรียกใช้ฟังก์ชันในไฟล์ PHP หนึ่งไฟล์จากไฟล์ PHP ที่สองและส่งผ่านพารามิเตอร์สองตัวไปยังฟังก์ชันนั้น ฉันจะทำเช่นนี้ได้อย่างไร?

ฉันยังใหม่กับ PHP มาก โปรดบอกฉันว่าฉันควรรวมไฟล์ PHP แรกไว้ในไฟล์ที่สองหรือไม่?

โปรดแสดงตัวอย่าง คุณสามารถระบุลิงก์ได้หากต้องการ

คำตอบ:


173

ใช่รวมไฟล์แรกไว้ในไฟล์ที่สอง นั่นคือทั้งหมด

ดูตัวอย่างด้านล่าง

File1.php:

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

ตอนนี้ใช้include( http://php.net/include ) เพื่อรวมFile1.phpเพื่อให้เนื้อหาที่มีอยู่สำหรับการใช้งานในแฟ้มที่สอง:

File2.php:

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

9
หากต้องการป้องกันการเข้าถึงเนื้อหาไฟล์โดยไม่ได้รับอนุญาตพร้อมกับฟังก์ชันทั้งหมดของคุณให้ฝังฟังก์ชัน (File1.php) ไว้เหนือ DOCUMENT_ROOT และเปลี่ยนสิทธิ์เป็น 'rwxr-x - x'
Kirk Powell

1
ฉันขำกับเสียงสะท้อนฮ่า ๆ ! tks LOL
ofri cofri

1
@ofricofri: ผู้คนมีอารมณ์ขันย้อนกลับไปในปี 2011
ประธาน James K. Polk

1
@ PresidentJamesK.Polk: ฉันหวังว่าจะมีการฟื้นฟูในไม่ช้า
ofri cofri


9

ไดเร็กทอรีไฟล์:

โครงงาน>

-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);

ผลลัพธ์คือ:

ผลรวมของสองจำนวน 6 ผลคูณของสองจำนวน 6

หมายเหตุ: อย่าเขียนสาธารณะก่อนฟังก์ชัน ตัวปรับแต่งสาธารณะและส่วนตัวเหล่านี้สามารถใช้ได้เมื่อคุณสร้างคลาสเท่านั้น


ฉันได้แยกฟังก์ชั่นของฉันออกเป็นไฟล์แยกต่างหากเพื่อรวมไว้ในที่ที่จำเป็น
ลีโอ

8

คุณสามารถเขียนฟังก์ชันในไฟล์แยกต่างหาก (พูดว่า common-functions.php) และรวมไว้ที่ใดก็ได้ที่ต้องการ

function getEmployeeFullName($employeeId) {
// Write code to return full name based on $employeeId
}

คุณสามารถรวม common-functions.php ในไฟล์อื่นได้ดังต่อไปนี้

include('common-functions.php');
echo 'Name of first employee is ' . getEmployeeFullName(1);

คุณสามารถรวมไฟล์จำนวนเท่าใดก็ได้ในไฟล์อื่น แต่รวมถึงค่าใช้จ่ายด้านประสิทธิภาพเพียงเล็กน้อย ดังนั้นรวมเฉพาะไฟล์ที่จำเป็นจริงๆ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.