Hits : 3141

php classes


Contents


Classes


Κλάσεις – Αντικείμενα.

Οι δομές προγραμματισμού : κλάσεις / αντικείμενα, αποτελούν ένα τεράστιο κεφάλαιο
σε όλες σχεδόν τις γλώσσες προγραμματισμού. Η προγραμμαστική ιδέα είναι η εξής:
Δημιουργώ ένα πρότυπο (μία μήτρα) και εν συνεχεία χρησιμοποιώ ένα αντίγραφο του
αρχικού προτύπου ως ξεχωριστή οντότητα.

Στην php μία κλάση έχει τα εξής μέρη:

top

Απλό παράδειγμα


Ένα τυπικό παράδειγμα είναι το εξής :

classes.php

<?php

class SimpleClass {
    // member declaration
    public $var = 'a default value';

    // method declaration
    public function displayVar($var) {
   if ( empty($var) ) $var = $this->var;
        echo $var;
  echo "<br>";
    }
}

$sc = new SimpleClass;
echo "<font color=blue>Παράδειγμα μίας απλής κλάσης : </font>" ;
$sc->displayVar();
echo "<font color=blue>Ορίζω εγώ το όρισμα : </font>";
$sc->displayVar("TEST");

?>


top

Ένα πιο περίπλοκο παράδειγμα


classes.php

<?php

class SimpleClass {
    public $var = "a default value";

    public function displayVar($var) {
  if ( empty($var) ) $var = $this->var;
  return $var . "<br><hr>\n";
    }
}

class PageHtml {

  public $title = "A simple title page";
  public $charset = "utf-8";
  public $text = " Test body ";

  public function display_header($title, $charset) {
    if ( empty($title) ) $title = $this->title;
    if ( empty($charset) ) $charset = $this->charset;
    $header  = "<html>\n";
    $header .= "<head>\n";
    $header .= "<title>".$title."</title>\n";
    $header .= "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=".$charset."\" />\n";
    $header .= "</head>\n";
    $header .= "<body>\n";
    return $header;
  }

  public function display_body($text) {
    if ( empty($text) ) $text = $this->text;
    $body  = "<p>\n";
    $body .= $text;
    $body .= "</p>\n";
    return $body;
  }

  public function display_footer() {
    $footer  = "</body>\n";
    $footer .= "</html>\n";
    return $footer;
  }

}

?>



page.php

<?php

error_reporting(E_ERROR);

include_once("classes.php");

$p = new PageHtml;
echo $p->display_header();
echo "<hr>";
echo $p->display_body("This is a body test");
echo "<hr>";
echo $p->display_body();
echo "<hr>";

$sc = new SimpleClass;
echo "<font color=blue>Παράδειγμα μίας απλής κλάσης : </font>" ;
echo $p->display_body($sc->displayVar());
echo $p->display_footer();

?>


top