Просмотр поста

.
Screamer
Ja_Kazanova (27.08.2012/14:27)
Я как бы начал учить ООП и все ничего, и все понятно кроме... ПОЛИМОРФИЗМма
Если на просторах этого сайта имеются спецы которые могли бы мне нормальным человеческим языком обьяснить его идею, принци
Тут не нужно быть спецом, достаточно заглянуть хотябы в туже википедию.
Полиморфизм - один интерфейс, множество реализаций.
Например:

// Интерфейс для предоставления доступа к каким либо данным
abstract class Storage {

  abstract function get();
  abstract function set();

}

// Реализация для какого либо конфига
class Conf extends Storage {

  function get() {
    return file_get_contents('config');
  }

  function set($conf, $data) {
    return file_put_contents($conf, $data);
  }

}

// Реализация для MySQL
class Db extends Storage {

  function get() {
    return mysql_fetch_assoc(mysql_query("SELECT FROM `table` WHERE `item` = '1'"));
  }
  
  function set($data) { 
    mysql_query("UPDATE `table` SET `text` = '" . mysql_real_escape_string($data) . "' WHERE `item` = '1'");
  }

}

Хотя в данном примере можно было бы использовать и сам интерфейс вместо абстрактного класса