Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class File
- {
- protected $path; //Atrybuty protected - niedostępne spoza klasy i widoczne w klasie dziedziczącej
- protected $size;
- public function getPath() //Getter do zmiennej path
- {
- return $this->path;
- }
- public function getSize() //Getter do zmiennej size
- {
- return $this->size;
- }
- public function setSize($size)//Size setter - sprawdzamy czy dane sa poprawne potem je ustawiamy
- {
- if ($size < 0 || !is_numeric($size)) {
- return false;
- }
- $this->size = $size;
- }
- public function setPath($path)//Path setter - sprawdzamy czy dane sa poprawne potem je ustawiamy
- {
- if (!is_string($path) || $path[0] !== '/') {
- return false;
- }
- $this->path = $path;
- }
- public function __construct($path, $size) //Konstruktor przyjmujące dwa parametry
- {
- if (
- !is_string($path) ||
- $path[0] !== '/' ||
- $size < 0 ||
- !is_numeric($size)
- ) {
- return false;
- }
- $this->size = $size;
- $this->path = $path;
- }
- public function calculateSize($unit)
- {
- switch ($unit) {
- case 'MB': {
- $result = floor($this->size / 1024 / 1024);
- break;
- }
- case 'KB': {
- $result = floor($this->size / 1024);
- break;
- }
- default: {
- echo 'Zły format!';
- return false;
- }
- }
- return $result;
- }
- }
- $wmpFile = new File('/asdasd', 156489789); //Stworzenie obiektu typu file
- echo $wmpFile->calculateSize('MB'); //Metoda użyta(zmiena jednostek)
- var_dump($wmpFile); //pokazanie
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement