web-dev-qa-db-fra.com

Fonction d'appel CodeIgniter dans la même classe

J'essaie de faire ce code dans mon application CodeIgniter:

<?php
  class Inventory extends Controller {

    function current_stock()
    {
      //do something
    }

    function add_stock()
    {
      //do something-else
      ****then do function current_stock()*****

    }

  }

Comment exécuter une autre fonction depuis une seconde? L'approche décrite ici (à propos de l'extension des contrôleurs) est quelque chose d'une exagération pour moi.

Suis-je en train de manquer un moyen beaucoup plus facile?

28
Mr Hyde

D'accord, je suis d'accord pour dire que c'est une grande erreur; vient du manque de OOP compréhension;

<?php
class Inventory extends Controller {
    function current_stock() {
        //do something
    }

    function add_stock() {
        //do something-else
        $this->current_stock();
        // and we called the other method here!
    }
}

Juste que je ne m'attendais pas à ce que ce soit si facile

100
Mr Hyde

Utilisez simplement $this->your_function_name();

7
Rahul Bajaj

Seulement $ this-> nameFunction ();
exemple

<?php 

class Hello extends CI_Controller{

 public function index(){
  $this->hello();
 }
public function hello(){
  return "hello world";
 }
}
2
Daniel Muñoz Diaz