здравствуйте, только начал разбираться с ООП и вот написал свой первый класс, это нечто должно брать строку и добавлять к ней из массива строк строку, чтобы был урл вида http://ru.wikipedia.org/дома Код (Text): <?php class addUrl { public $wiki = "http://ru.wikipedia.org"; public $add = "in.txt"; function add() { return "{$this->wiki}". "/". "{$this->add}"; } } $adds = new addUrl(); $adds->wiki = "http://ru.wikipedia.org"; $adds->add = file($add); foreach($add as $value) { echo $wiki, '/' , $value. '<br>'; } ?> подскажите, пожалуйста как это правильно записать, в чем ошибка. на выходе должно быть что-то вида http://ru.wikipedia.org/дома http://ru.wikipedia.org/страусы http://ru.wikipedia.org/страны заранее спасибо=)
Ну например так: PHP: <?php class addUrl { public $wiki = "http://ru.wikipedia.org"; public $adds = array(); function add() { if(!empty($this->adds)) return $this->wiki."/".array_pop($this->adds); return false; } } $addu = new addUrl(); $addu->adds = file("in.txt"); while($s=$addu->add()) echo $s.'<br>'; ?>
большое спасибо! поясните, пожалуйста, что делается в этом месте: Код (Text): if(!empty($this->adds)) return $this->wiki."/".array_pop($this->adds); return false;
Петр Чего ужас-то? Это-ж просто пример да к тому-же не для реальной задачи а просто "сделать такую простую фигню через класс". Понятно что в таком виде это абсолютно нерационально. Rumato если в массиве еще есть элементы - формирует строку беря элемент из массива, если кончились (массив пуст) - вернет false. Но что-то больно простые вещи вы не понимаете. Может рановато вам классы смотреть? Подучите сначала просто язык.