Здравствуйте. Читаю книгу Котеров, Костарев php для новичков. Не могу понять что происходит в данном скрипте Вижу массив, вижу цикл. А вот дальше что то не въезжаю если ключ $k === $selected
В $k будет id из массива, в $select будет id из аргумента в функции, логика такая в цикле мы формируем несколько option тегов для select тега и только для одного option который по id совпадает с тем что передали аргументом в функцию, для него добавим текст checked что в html для этого тега будет значит как выбранный по умолчанию пункт из select, это делают чтобы например сохранить выбор пункта из select. Вот ещё примеры http://code.runnable.com/VTSNl5PkmAYuVsGs/simple-checkbox-list-and-array-for-php http://code.runnable.com/VTUxcxHr5sJO0Anz/html-checkbox-list-poll-and-php-array
HTML: <select> <option>Пункт 1</option> <option>Пункт 2</option> <option>Пункт 3</option> </select> То есть если у нас второй аргумент в функции равен 1, то в тег <option>Пункт 2</option> добавим текст checked. Потому что у нас $k ===$selected, а ключ у нас начинается в массиве с нуля. То есть 1 получается второй тег <option>Пункт 2</option>
Последний вопрос а что значит запись text.=<option.....? --- Добавлено --- Я вот не понял а где в скрипте написан этот чекенд? Там просто $ch = " selected". С пробелом, зачем пробел
https://secure.php.net/manual/ru/language.operators.string.php соединение строк, конкатенация, аналог PHP: $text = $text.'<option...'; используй редактор с подсветкой, например netbeans, $ch тут: $text .= '<option$ch...'