Bütün sınıfa değişkenleri Atama [Best Practice?]

0 Cevap php

Yani bu (örneğin) gibi görünen bir sınıf var

class Statistics extends Controller {


function __construct()
{
    parent::Controller();
    $data['title'] = 'Statistics';
    //Locale
    setlocale(LC_MONETARY, 'en_US');
    date_default_timezone_set('America/Chicago');
    //Require Login
    $this->load->library('session');
    if($this->session->userdata('affid'))
    {
    $this->load->view('userhead',$data);
    }
    else
    {
    header("Location: /network/login/submit");
    }
}   

//Index page. Show stat display options
function index()
{
    $this->load->view('statoptions');
    $this->load->view('footer');
}

//Stats by offer
function offer()
{
    $this->load->library('statistics');
    $this->_getvars();
    if(!$getsort && $direction)
    {
    $sort = array('Stat.offer_id' => 'desc','Stat.revenue' => 'desc');
    }   

    $stats = $this->statistics->aff_stats($affid,$startdate,$enddate,'Stat.offer_id',$sort);
    $data['statdate'] = array('start' => $startdate, 'end' => $enddate);
    $data['stats'] = $stats['data'];
    $data['statview'] = 'offer';
    $data['dir'] = 'desc';
    if($direction == 'desc')
    {
    $data['dir'] = 'asc';
    }
$this->load->view('statistics',$data);
#print_r($data['stats']);
}

//Stats by day
function daily()
{

$stats = $this->statistics->aff_stats($affid,$startdate,$enddate,'Stat.date',$sort);
$data['statdate'] = array('start' => $startdate, 'end' => $enddate);
$data['stats'] = $stats['data'];
$data['statview'] = 'daily';
    $data['dir'] = 'desc';
    if($direction == 'desc')
    {
    $data['dir'] = 'asc';
    }
$this->load->view('statistics',$data);
#print_r($stats);
}

//Stats by Affiliate's SubID
function subid()
{
$stats = $this->statistics->aff_stats($affid,$startdate,$enddate,'Stat.affiliate_info1',$sort);
$data['statdate'] = array('start' => $startdate, 'end' => $enddate);
$data['stats'] = $stats['data'];
$data['statview'] = 'subid';
    $data['dir'] = 'desc';
    if($direction == 'desc')
    {
    $data['dir'] = 'asc';
    }
$this->load->view('statistics',$data);
#print_r($stats);
}
}   

Ben şu değişkenler benim sınıf içinde her işlev çağrıda edilmesi mümkün olmalıdır.

        $affid = $this->session->userdata('affid');
    $startdate = preg_replace('/[^\d-]+/', '', $this->input->get_post('start'));
    $enddate = preg_replace('/[^\d-]+/', '',$this->input->get_post('end'));
    if(!$startdate)
    {
    $startdate = date("Y-m-d");
    }
    if(!$enddate)
    {
    $enddate = date("Y-m-d");
    }
    $getsort = htmlspecialchars($this->input->get_post('sort'),ENT_QUOTES);     
    $direction = htmlspecialchars($this->input->get_post('dir'),ENT_QUOTES);
    if($getsort && $direction)
    {
    $sort[$getsort] = $direction;
    }

Tüm sınıfa değişkenleri atama için en iyi yöntem nedir?

Bu arada Kod Ateşleyici denetleyicisi

0 Cevap