[英]How do I call a function inside another controller file in PHP?
我有一個函數需要使用Codeigniter從另一個文件調用,但我不確定如何執行此操作。
一個文件位於controllers / Jobassignment.php中,其中包含一個名為createassignments()的函數,我需要從controllers / Reporting.php進行調用。 我是Codeigniter的新手,那么如何從Reporting.php調用createassignments函數?
我試過了
$this->load->library('controllers/jobassignment');
$this->jobassignment->createassignments();
但這是行不通的。
它已在表單標簽中調用:
<form action="<?php echo base_url( 'jobassignment/createassignments' ); ?>
但是我不能在函數中間這樣做。
它們都是控制器文件。 任何幫助,將不勝感激。
它與Codeigniter無關。 如果Jobassignment.php是一個PHP類,則可以為其創建一個實例,然后調用該函數:
user namespace/Jobassignment
$jobassignment = new Jobassignment();
$jobassignment->createassignments();
但是,如果您創建的該方法要在其他類中調用,則必須在Helpers目錄下創建一個類,然后按照我的解釋調用該方法。
不要創建請求類的實例。 您必須參加一個幫助班來處理。
如果目標是在另一個控制器中使表單的操作成為方法,則您的代碼
<form action="<?php echo base_url( 'jobassignment/createassignments' ); ?>
很好。 您只需要了解您正在執行重定向,就可以在當前控制器中執行代碼。 理解<form action...>
始終是重定向,其中將表單的輸入元素值發送到服務器。
因為是重定向,所以沒有理由調用$this->load->library('controllers/jobassignment');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.