Originariamente inviato da Santino83_02
nella seconda guida non si parla di programmazione ad oggetti ma al piu si usa qualcosina di "oggetttoso"
quindi ho ragione io

(troppo bella questa faccina)
Hmm, io sono all'inizio, però questa mi sembrano una serie di classi...
Codice PHP:
<?php interface DataProvider { public function storeVisits($visits); public function readVisits(); } class FileDataProvider implements DataProvider { const FILE_PATH = 'counter.txt'; private $fp; public function __construct() { if(!file_exists(FileDataProvider::FILE_PATH)) { $fp = fopen(FileDataProvider::FILE_PATH, 'w+'); fwrite($fp, '0'); fclose($fp); } $this->fp = fopen(FileDataProvider::FILE_PATH, 'r+'); } public function readVisits() { return intval(file_get_contents(FileDataProvider::FILE_PATH)); } public function storeVisits($visits) { ftruncate($this->fp, 0); fseek($this->fp, 0); fwrite($this->fp, strval($visits)); } public function __destruct() { fclose($this->fp); } } class SimpleCounter { private $provider; public $visits; public function __construct(DataProvider $provider) { $this->provider = $provider; $this->visits = $this->provider->readVisits(); if($this->isValid()) { $this->provider->storeVisits(++$this->visits); } } protected function isValid() { return true; } } ?>
(perdono per la formattazione, comunque è il paragrafo 3)
tra l'altro con parametri che non ho visto nella prima guida
Stessa cosa anche per la guida alla programmazione ad oggetti, comprensibile fino al capitolo 20, poi dopo comincia ad inserire nuovi parametri, ma non li spiega