Nicht sicher, wenn möglich, aber was ich versuche, ist, eine Abfragezeichenfolge über eine Get-Anforderung an meinen Controller zu übergeben. Von hier bekomme ich den Abfragezeichenfolgenwert mit $ _GET ['name']. Was ich dann tun möchte, ist, diesen GET-Wert zu verwenden und ihn als den Namen der Methode anzuhängen, die ich an mein Modell übergeben werde, um die Daten zurückzugeben, die ich brauche.Codeigniter - Anfügen von Variablennamen an einen Methodennamen zur Ausführung Modellfunktion
Dies liegt daran, dass mehrere Aktionen unterschiedliche Abfragezeichenfolgenwerte an denselben Controller übergeben, aber dann den Wert verwenden, um die Daten von verschiedenen Funktionen in meinem Modell abzurufen.
z.B.
-Controller
class ControllerName extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->model('my_model');
}
public function index() {
$queryName = $_GET['query_string']
// e.g. $queryName = 'customer'
//Use the query string and append to method to pass to Model function
$result = $this->my_model->$queryName._get_query(); //???
//e.g. $result = $this->my_model->customer_get_query();
}
}
My_model
class My_model extends CI_Model {
function __construct() {
parent::__construct();
$this->load->database();
}
function customer_get_query() {
//...run database query and return result
}
}
Irgendwelche Gedanken?
Sie $ this- versuchen> my_model -> {$ queryname .'_ get_query '}(); – jagad89
Tolles Dankeschön, hat ein Vergnügen gemacht! – swood