2016-11-28 2 views
-2

Im Wesentlichen bin ich neu in OOP-Programmierung und PHP, HTML, Css und Mysqli. Ich programmiere eine ziemlich fortgeschrittene Webseite für meine Kursarbeit, was ein großer Sprung ist. Ich habe mich nur gefragt, wie Sie innerhalb einer Seite auf einer Klasse aufrufen, zSo rufen Sie Klassen in PHP

public function appointment_data($book_date, $book_time, $stu_id, $stf_id, $lab_id, $reason){ 
      $strTime = strval($book_time); 
      $sqlTime; 
      if ($book_time < 1000) { 
       $sqlTime = "0" . subStr($strTime, 0, 1) . ":" . subStr($strTime, 1, 2); 
      } else { 
       $sqlTime = subStr($strTime, 0, 2) . ":" . subStr($strTime, 2, 2);     
      } 
      $result = $this->_db->query("INSERT INTO appointments 
     (Appt_Date, Appt_Time, Student_Id, Teacher_Id, Location_Id, Reason) VALUES 
     ('$book_date', '$sqlTime', $stu_id, $stf_id, $lab_id, '$reason')"); 
      } 

Dies ist einer meiner Funktionen, aber im Mühe, sie auf Aufruf und es zu benutzen. Die ganze Logik sollte stimmen?

Antwort

2

Wenn dies zum Beispiel Teil einer Klasse namens Termin, rufen Sie es wie folgt aus:

// Instantiate an object of class Appointment 
$appointment_obj = new Appointment(); 

// Call method appointment_data() 
$appointment_obj->appointment_data($date, $time, $stu_id, $stf_id, $lab_id, $reason); 

Nur, um es vollständig:

Wenn Sie nicht und können nicht instanziiert eine Objektinstanz, können Sie auch die Methode statisch aufrufen, wenn Sie static auf die Funktionsdeklaration hinzu:

public static function appointment_data($book_date, $book_time, $stu_id, $stf_id, $lab_id, $reason){ 

Sie können es dann so nennen:

Appointment::appointment_data($date, $time, $stu_id, $stf_id, $lab_id, $reason); 

Allerdings können Sie nicht tun, wenn Sie die Funktion verlassen, wie es ist, wie es $this verweist, die das aktuelle Objekt darstellt und ist in statischen Funktionen nicht zur Verfügung.

+0

Vielen Dank das ist wirklich geholfen. Tut mir leid, wenn meine Frage nicht klar war, ich bin neu in all dem. –

+0

Froh, dass es geholfen hat! Fühlen Sie sich frei, weitere Fragen zu stellen, wenn sie entstehen. –

+0

Stevan Souqbal sollten Sie versuchen, grundlegende zu lernen, –