ShadeOfLance #181 3 октября 2013 бля давно хотел на пхп хуярить научитьсяпрочитаю все обязательно, пиздато Цитата Поделиться сообщением Ссылка на сообщение
Двапой #182 4 октября 2013 Cмысл функции getHeroStats, если там все значения прироста и базовых статов дефолтные.Это разделение логики. Конечно можно было это написать в цикле, кода бы убавилось на две строки. Но так делать не надо, ибо, к примеру, функция может пригодится в будущем. Вообще в будущем, по хорошему надо будет делать минимум так. Но это чисто от того что мне делать нечего. <?php interface HeroInterface { public $name; public $stats; public $statsIncrement; public function __constructor($name, $stats, $statsIncrement); } class Hero implements HeroInterface { public $name; public $stats; public $statsIncrement; /** * @param (string) $name * @param (array) $stats * @param (array) $statsIncrement * @return Hero **/ public function __constructor($name, $stats, $statsIncrement) { $this->name = $name; $this->stats = $stats; $this->statsIncrement = $statsIncrement; } /** * @return (array) $stats **/ public function getStatsOnLevel ($level) { if($level > 25) throw new Exception("Level must be < 25", 1); elseif($level < 1) throw new Exception("Level must be > 1", 1); return [ $this->stats[0] + $this->statsIncrement[0] * ($level - 1), $this->stats[1] + $this->statsIncrement[1] * ($level - 1), $this->stats[2] + $this->statsIncrement[2] * ($level - 1) ]; } } $hyroCopter = new Hero('Hyrocopter', [18, 24, 21], [1.8, 2.4, 2.1]); for($level = 1; $level < 26; $level++) { echo 'Hyro stats: ' . implode(', ', $hyroCopter->getStatsOnLevel($level)); } Не пытайтесь понять, а если попытаетесь и не поймете, то ничгео страшного. Это мы скоро с вами пройдем (я надеюсь). Цитата Мобильное приложение для продоты https://play.google....id=ru.prodota.m Поделиться сообщением Ссылка на сообщение
rogogo #183 4 октября 2013 Тебе на работе совсем делать нехуй? Цитата Русскоязычное сообщество Minecraft(кликабельно) Королева боли Нежданчик Поделиться сообщением Ссылка на сообщение
Двапой #184 4 октября 2013 Тестеры работают - я отдыхаю Цитата Мобильное приложение для продоты https://play.google....id=ru.prodota.m Поделиться сообщением Ссылка на сообщение
KotZhilkina #185 4 октября 2013 Тестеры работают - я отдыхаютестеры не работают - они мудаки конченные Цитата Публикация отключена Поделиться сообщением Ссылка на сообщение
Двапой #186 4 октября 2013 ну эт да Цитата Мобильное приложение для продоты https://play.google....id=ru.prodota.m Поделиться сообщением Ссылка на сообщение
Nekon #187 4 октября 2013 Зачем тебе ХероИнтерфейс? Какие классы кроме Херо могут его реализовать? Цитата Поделиться сообщением Ссылка на сообщение
Двапой #188 4 октября 2013 крипы лесные Цитата Мобильное приложение для продоты https://play.google....id=ru.prodota.m Поделиться сообщением Ссылка на сообщение
^p1x #189 4 октября 2013 Стандартные функции (работа с массивами) Тут должны были быть еще строки, но лучше по отдельности. Это все таки две огромные темы в программировании. Но по сути строки это массив сиволов, но об этом позже. Как вы уже знаете массивы используются для группирования чего либо. Массивы могут быть любой вложенности. То есть могут быть массивы массивов. Думаю вы проходили матрицы в школе, вот массив массивов по сути есть что-то подобное. Вы навреное слышали такие слова применительно к программированию как - цикл, итерация, for, while for each...цикл - это циклитерация это один шаг цикла (я об этом уже говорил?) for, while, foreach это обозначения циклов в пхп. Точнее такие своеобразные функции для работы с массивами. разберем как они работаю, и где что использовать // массив четырех человек что отписались выше $users = array("Двапой", "SPYHunter", "F1sher", "^p1x"); // давате их выведем на экран // с опомщью for for($i = 0; $i < count($users); $i++) { echo "user " . $users[$i]; } // с помощью while $c = 0; while($c++ < count($users)) { echo "user " . $users[$c]; } // foreach foreach($users as $user) { echo "user " . $user; } Вроде как все выведут одно и тоже :) теперь разбор for состоит из трех элементов, каждый из которых между собой разделяется точкой с запятой - Первый элемент это создание или обозначение какой-либо переменной которая будет нам помогать с циклом. А поскольку наш массив начинается с нулегого элемента, то мы обозначаем нашу переменную за нуль. - Второй элемент это условие выполнения цикла. Пока он является правдой TRUE уикл выполняется. Как становится FALSE цикл заканчивается. Тут мы сравниваем нашу переменную с колличеством элементов в массиве. Колличество эллементов определяется как count($massiv). - Третий элемент это то что мы делаем каждый раз с нашей переменной (в нашем случае с переменной $i). Мы ее каждый раз увеличивам на 1 while "до тех пор пока", состоит из одного элемента - условия. Пока условие верно цикл продолжается. Думаю тут сами разберетесь. foreach это моя любимая штука. ОЧЕНЬ редко использую все остальные циклы, хотя они быстрее, но не шибко удобнее.форич принимает один элемент это массив, а потом просит указать название перменной в которую поместит наш элемент массива. для этого используются ключевое слово as Думаю на этот раз хватит. И вот вам задание: Создать функцию, которая принимает одно числовое значение и выводит на экран такую вот пирамиду. Высота пирамиды равна переданному значению. * ** *** ... *** ** * То есть пирамида только из звездочек троеточие показывает что ширина этой пирамиды может быть любой. Решения скидывать мне в личку! Вроде задание простое, с числами разобрался что почем, но с текстом...Подскажите, как можно с текстом работать ("умножать" его итд или там в массив вписывать array ("#", "##) итд указывая переменную)Как в конец массива добавлять я понял, а вот что делать с текстовым значением ?Нихуя не догоню. Цитата Поделиться сообщением Ссылка на сообщение
bonzo #190 4 октября 2013 (изменено) Кстати, мб кому интересно, заходите сюдаhttp://school-php.com/videoВыполняете задания, пишете в скайп этому челу, он их проверяет. Изменено 4 октября 2013 пользователем bonzo Цитата Поделиться сообщением Ссылка на сообщение
SPYHunter #191 4 октября 2013 Стандартные функции (работа с массивами) Тут должны были быть еще строки, но лучше по отдельности. Это все таки две огромные темы в программировании. Но по сути строки это массив сиволов, но об этом позже. Как вы уже знаете массивы используются для группирования чего либо. Массивы могут быть любой вложенности. То есть могут быть массивы массивов. Думаю вы проходили матрицы в школе, вот массив массивов по сути есть что-то подобное. Вы навреное слышали такие слова применительно к программированию как - цикл, итерация, for, while for each...цикл - это циклитерация это один шаг цикла (я об этом уже говорил?) for, while, foreach это обозначения циклов в пхп. Точнее такие своеобразные функции для работы с массивами. разберем как они работаю, и где что использовать // массив четырех человек что отписались выше $users = array("Двапой", "SPYHunter", "F1sher", "^p1x"); // давате их выведем на экран // с опомщью for for($i = 0; $i < count($users); $i++) { echo "user " . $users[$i]; } // с помощью while $c = 0; while($c++ < count($users)) { echo "user " . $users[$c]; } // foreach foreach($users as $user) { echo "user " . $user; } Вроде как все выведут одно и тоже :) теперь разбор for состоит из трех элементов, каждый из которых между собой разделяется точкой с запятой - Первый элемент это создание или обозначение какой-либо переменной которая будет нам помогать с циклом. А поскольку наш массив начинается с нулегого элемента, то мы обозначаем нашу переменную за нуль. - Второй элемент это условие выполнения цикла. Пока он является правдой TRUE уикл выполняется. Как становится FALSE цикл заканчивается. Тут мы сравниваем нашу переменную с колличеством элементов в массиве. Колличество эллементов определяется как count($massiv). - Третий элемент это то что мы делаем каждый раз с нашей переменной (в нашем случае с переменной $i). Мы ее каждый раз увеличивам на 1 while "до тех пор пока", состоит из одного элемента - условия. Пока условие верно цикл продолжается. Думаю тут сами разберетесь. foreach это моя любимая штука. ОЧЕНЬ редко использую все остальные циклы, хотя они быстрее, но не шибко удобнее.форич принимает один элемент это массив, а потом просит указать название перменной в которую поместит наш элемент массива. для этого используются ключевое слово as Думаю на этот раз хватит. И вот вам задание: Создать функцию, которая принимает одно числовое значение и выводит на экран такую вот пирамиду. Высота пирамиды равна переданному значению. * ** *** ... *** ** * То есть пирамида только из звездочек троеточие показывает что ширина этой пирамиды может быть любой. Решения скидывать мне в личку! Вроде задание простое, с числами разобрался что почем, но с текстом...Подскажите, как можно с текстом работать ("умножать" его итд или там в массив вписывать array ("#", "##) итд указывая переменную)Как в конец массива добавлять я понял, а вот что делать с текстовым значением ?Нихуя не догоню.Гугли про курсор Цитата https://insave.hostinghttps://horhul.me Поделиться сообщением Ссылка на сообщение
F1sher #192 5 октября 2013 Кстати, мб кому интересно, заходите сюдаhttp://school-php.com/videoВыполняете задания, пишете в скайп этому челу, он их проверяет.прикольынй сайт вроде и сделан недавно, спасибо это пиздец $stats = getHeroStats($level, $basicStr, $basicAgi, $basicInt, $incrementStr, $incrementAgi, $incrementInt); не делай так и указателей избегай, там где они не нужны я уже понял. Просто книга то малость устаревшая как я понял)вот, довел до ума <? function getHeroStats ($level) { // Базовые характеристики гирокоптера $basicStr = 18; $basicAgi = 24; $basicInt = 23; // Прирост статов $incrementStr = 1.8; $incrementAgi = 2.8; $incrementInt = 2.1; //функция получения произвольного значения статов // возвращает массив статов return array( $basicStr + $incrementStr * ($level - 1), $basicAgi + $incrementAgi * ($level - 1), $basicInt + $incrementInt * ($level - 1), ); } $level = 0; while($level++ < 25) { $stats = getHeroStats($level); echo 'Gyro stats on ' . $level . 'lvl - str: ' . $stats[0] . ', agi: ' . $stats[1] . ', int: ' . $stats[2] . "<br />" . "<br />"; } та книга не устаревшая, все работает. Почему ты вдруг решил, что она стара для тебя?ну да, там походу для примера приводятся глобальные переменные, вывод через <<<_END, указатели и все такое. Вот я в первом моем случае использовал все это в одном примере. Получилось офк нерентабельно, двапой забраковал все. Ну я и подумал что глобал переменные, о которых в книге пишется, уже не актуальны. Ну мб они действительно только для примера там. Cмысл функции getHeroStats, если там все значения прироста и базовых статов дефолтные.я просто проходил материал с функциями и решил свой пример сделать, где все, что я уже изучил будет использоваться.Ну глобальные переменные советуют использовать как можно реже уже хз начиная с какого года. Там это приводится скорее всего для примера чисто или другого варианта просто не было. <<<_END это heredoc. Он вроде не запрещен к использованию, можешь почитать о нем тут http://php.net/manual/ru/language.types.string.php . Это просто способ определения строк. С помощью него удобно html код запихивать. Мб он не слишком популярен. Указателей я там не припомню Цитата Би май дарлинг http://www.youtube.com/watch?v=LhkUjA3D8ig Поделиться сообщением Ссылка на сообщение
^p1x #193 10 октября 2013 Стандартные функции (работа с массивами) Тут должны были быть еще строки, но лучше по отдельности. Это все таки две огромные темы в программировании. Но по сути строки это массив сиволов, но об этом позже. Как вы уже знаете массивы используются для группирования чего либо. Массивы могут быть любой вложенности. То есть могут быть массивы массивов. Думаю вы проходили матрицы в школе, вот массив массивов по сути есть что-то подобное. Вы навреное слышали такие слова применительно к программированию как - цикл, итерация, for, while for each...цикл - это циклитерация это один шаг цикла (я об этом уже говорил?) for, while, foreach это обозначения циклов в пхп. Точнее такие своеобразные функции для работы с массивами. разберем как они работаю, и где что использовать // массив четырех человек что отписались выше $users = array("Двапой", "SPYHunter", "F1sher", "^p1x"); // давате их выведем на экран // с опомщью for for($i = 0; $i < count($users); $i++) { echo "user " . $users[$i]; } // с помощью while $c = 0; while($c++ < count($users)) { echo "user " . $users[$c]; } // foreach foreach($users as $user) { echo "user " . $user; } Вроде как все выведут одно и тоже :) теперь разбор for состоит из трех элементов, каждый из которых между собой разделяется точкой с запятой - Первый элемент это создание или обозначение какой-либо переменной которая будет нам помогать с циклом. А поскольку наш массив начинается с нулегого элемента, то мы обозначаем нашу переменную за нуль. - Второй элемент это условие выполнения цикла. Пока он является правдой TRUE уикл выполняется. Как становится FALSE цикл заканчивается. Тут мы сравниваем нашу переменную с колличеством элементов в массиве. Колличество эллементов определяется как count($massiv). - Третий элемент это то что мы делаем каждый раз с нашей переменной (в нашем случае с переменной $i). Мы ее каждый раз увеличивам на 1 while "до тех пор пока", состоит из одного элемента - условия. Пока условие верно цикл продолжается. Думаю тут сами разберетесь. foreach это моя любимая штука. ОЧЕНЬ редко использую все остальные циклы, хотя они быстрее, но не шибко удобнее.форич принимает один элемент это массив, а потом просит указать название перменной в которую поместит наш элемент массива. для этого используются ключевое слово as Думаю на этот раз хватит. И вот вам задание: Создать функцию, которая принимает одно числовое значение и выводит на экран такую вот пирамиду. Высота пирамиды равна переданному значению. * ** *** ... *** ** * То есть пирамида только из звездочек троеточие показывает что ширина этой пирамиды может быть любой. Решения скидывать мне в личку! Вроде задание простое, с числами разобрался что почем, но с текстом...Подскажите, как можно с текстом работать ("умножать" его итд или там в массив вписывать array ("#", "##) итд указывая переменную)Как в конец массива добавлять я понял, а вот что делать с текстовым значением ?Нихуя не догоню. С первого взгляда все оказалось очень просто.А НЕ ДЕЛЕ ХУЙ ПИЗДА РАСПИДОРАСИЛО, но сделал. Надеюсь милаша двапой оценит. Жду новые уроки и задания Цитата Поделиться сообщением Ссылка на сообщение
sp0ke #194 10 октября 2013 короче смотрю уроки webtheory. норм ваще даже ахуенные уроки, не говорит 100 раз хуйню неавжную и все быстро по теме этц. сайт там по инвайтам. хочу на открытие получить Цитата Поделиться сообщением Ссылка на сообщение
^p1x #195 11 октября 2013 двапой разленился, где новый урок и задание? Цитата Поделиться сообщением Ссылка на сообщение
AucT #197 12 октября 2013 http://php.net/manual/ru/language.oop5.php Цитата Steam ID Finder Dota2 Accepter AucT Hotkeys Tool Dota CustomKeys Generator Поделиться сообщением Ссылка на сообщение
F1sher #199 13 октября 2013 Могу на английском поискать пример с описанием с ооп, на пальцах Цитата Би май дарлинг http://www.youtube.com/watch?v=LhkUjA3D8ig Поделиться сообщением Ссылка на сообщение
Двапой #200 13 октября 2013 не бегите вперед паровоза, все вам устрою я же написал на первой странице, что делаю это не спешно Цитата Мобильное приложение для продоты https://play.google....id=ru.prodota.m Поделиться сообщением Ссылка на сообщение