0

すべての関数で使用できる php クラスで変数を宣言したいと考えています。私は codeigniter フレームワーク & を使用して、各関数で base_url などのデータを渡す必要があります。また、そのようなデータをすべて単一の変数に入れる必要があります。たとえば$data['base_url']=base_url()$data['title']="My_Site_title"etc & その後、単一の変数 $data のみを送信します (これは codeigniter では一般的なことです)。

この質問に従って、コードを次のように変更しました。

class Search extends CI_Controller {

function Search() {
    parent::__construct();
    $this->load->model('student_model');

    $this->load->helper('form');
    $this->load->helper('url');
    $this->output->enable_profiler(TRUE);

    $this->data['base_url']=base_url();  //gives an error here
 }

 function index() {
     $this->load->view('search_view', $this->data);
 }
 }

しかし、それでも、マークされた場所で と と言ってエラーが発生しUndefined variable: dataますFatal error: Cannot access empty property in ..\search.php on line 16

4

1 に答える 1

1

どうぞ:

class Search extends CI_Controller {

protected $data = array();

function Search() {
    parent::__construct();
    $this->load->model('student_model');

    $this->load->helper('form');
    $this->load->helper('url');
    $this->output->enable_profiler(TRUE);

    $this->data['base_url']=base_url();
 }

 function index() {
     $this->load->view('search_view', $this->data);
 }
 }

PHP のクラス プロパティの詳細: http://php.net/manual/en/language.oop5.properties.php

于 2012-06-09T18:14:44.033 に答える