Язык программирования PHP - [11]
> // с ключом (индексом)
> // 13 это эквивалентно
> // $books[13] =
> // "Book about Perl";
>$books["lisp"] =
> 123456; /* Это добавляет к массиву новый
> элемент с ключом "lisp" и
> значением 123456 */
>unset($books[12]); // Это удаляет элемент
> // c ключом 12 из массива
>unset ($books); // удаляет массив полностью
>?>
Заметим, что, когда используются пустые квадратные скобки, максимальный числовой ключ ищется среди ключей, существующих в массиве с момента последнего переиндексирования. Переиндексировать массив можно с помощью функции array_values().
>
>$arr =
> array ("a","b","c"); /* Создаем массив
> со значениями
> "a", "b" и "c".
> Поскольку ключи
> не указаны, они
> будут 0,1,2
> соответственно */
>print_r($arr); // выводим массив (и ключи,
> // и значения)
>unset($arr[0]);
>unset($arr[1]);
>unset($arr[2]);
> // удаляем из него все значения
>print_r($arr); // выводим массив (и ключи,
> // и значения)
>$arr[] = "aa"; // добавляем новый элемент
> // в массив.
> // Его индексом (ключом)
> // будет 3, а не 0
>print_r($arr);
>$arr =
> array_values($arr); // переиндексируем
> // массив
>$arr[] = "bb"; // ключом этого элемента
> // будет 1
>print_r($arr);
>?>
Результатом работы этого скрипта будет:
>Array ( [0] => a [1] => b [2] => c )
>Array ( )
>Array ( [3] => aa )
>Array ( [0] => aa [1] => bb )
Тип object (объекты)
Объекты – тип данных, пришедший из объектно-ориентированного программирования (ООП). Согласно принципам ООП, класс – это набор объектов, обладающих определенными свойствами и методами работы с ним, а объект соответственно – экземпляр класса. Например, программисты – это класс людей, которые пишут программы, изучают компьютерную литературу и, кроме того, как все люди, имеют имя и фамилию. Теперь, если взять одного конкретного программиста, Васю Иванова, то можно сказать, что он является объектом класса программистов, обладает теми же свойствами, что и другие программисты, тоже имеет имя, пишет программы и т.п.
В PHP для доступа к методам объекта используется оператор ->. Для инициализации объекта используется выражение new, создающее в переменной экземпляр объекта.
>
>//создаем класс людей
>class Person
>{
>// метод, который обучает человека PHP
> function know_php()
> {
> echo "Теперь я знаю PHP";
> }
>}
>$bob = new Person; // создаем объект
> // класса человек
>$bob -> know_php(); // обучаем его PHP
>?>
Более подробно реализацию принципов ООП в языке PHP мы рассмотрим в одной из следующих лекций.
Тип resource (ресурсы)
Ресурс – это специальная переменная, содержащая ссылку на внешний ресурс (например, соединение с базой данных). Ресурсы создаются и используются специальными функциями (например, mysql_connect(), pdf_new() и т.п.).
Тип Null
Специальное значение NULL говорит о том, что переменная не имеет значения.
Переменная считается NULL, если:
- ей была присвоена константа NULL ($var = NULL);
- ей еще не было присвоено какое-либо значение;
- она была удалена с помощью unset().
Существует только одно значение типа NULL – регистронезависимое ключевое слово NULL.
Решение задачи
Теперь вернемся к задаче, которую мы поставили в самом начале лекции. Напомним, что она состояла в составлении письма разным людям по поводу разных событий. Попытаемся использовать для решения этой задачи изученные средства – переменные, операторы, константы, строки и массивы. В зависимости от получателя изменяется событие и обращение, указанные в письме, поэтому естественно вынести эти величины в переменные. Более того, поскольку событий и людей много, удобно использовать переменные типа массив. Подпись в письме остается постоянной всегда, поэтому логично задать ее как константу. Чтобы не писать слишком длинные и громоздкие строки, используем оператор конкатенации. Итак, вот что получилось:
>
>// пусть наша подпись
>// будет константой
>define("SIGN","С уважением, Вася");
>// зададим массивы людей и событий
>$names = array("Иван Иванович",
> "Петр Петрович",
> "Семен Семенович");
>$events = array(
> "f" => "день открытых дверей",
> "o" => "открытие выставки",
> "p" => "бал выпускников");
>// составим текст приглашения
>$str = "Уважаемый (ая), $names[0]";
>$str .= "
Приглашаем Вас на ".
> $events["f"];
>$str .= "
" . SIGN;
>echo $str; // выведем текст на экран
>?>
Заключение
Итак, в этой лекции мы познакомились с основами синтаксиса языка PHP, научились работать с переменными различных типов, константами, операторами, познакомились со всеми существующими в PHP типами данных. Говоря о таких типах данных, как строки и массивы, мы разобрали только самые основы. Эти конструкции настолько удобны и просты в использовании, что заслуживают отдельного разговора. Подробности будут изложены в последующих лекциях. Решая задачу, мы старались использовать только имеющиеся знания и не забегать вперед, поэтому решение не слишком подходит для практического применения. В следующей лекции мы исправим этот недостаток и создадим более универсальный шаблон электронного письма.
![Половая идентификация ребенка в кинетическом рисунке семьи](/storage/book-covers/ac/ac5b2cf435e320c2b679b133d70201eb0101d253.jpg)
Здоровые семейные отношения – это залог успешной полоролевой идентификации ребёнка. Начинаясь с рождения, процесс идентификации протекает непрерывно, с заострениями и актуализациями переживаний на кризисных этапах психосексуального развития. Одним из таких этапов является возраст эдипова комплекса. Конфликты и искажения воспитательного процесса на этом этапе никогда не проходят бесследно и могут с новой силой реанимироваться уже в подростковом возрасте. В пособии представлены основные критерии анализа и подходы к пониманию проблем половой идентификации ребёнка с помощью популярной рисуночной методики.
![Искусство Древней Греции и Рима: учебно-методическое пособие](/storage/book-covers/4c/4c3785b8496557e93de940ff04a8fc6d39db6429.jpg)
Предлагаемое методическое пособие рассчитано на студентов 1 курса всех форм обучения: очной (дневной, вечерней), при которой студенты слушают полный курс лекций по всем заявленным в пособии темам, и заочной, при которой студенты слушают краткий курс лекций и занимаются самостоятельной подготовкой к экзаменам и зачетам. Пособие содержит изложенную в краткой форме программу занятий, подробный тематический план-конспект по тридцати двум темам изучаемым в течение семестра, список рекомендованной к курсу лекций литературы, вопросы к экзаменам, темы рефератов, семинарских занятий, а также приблизительные темы дипломных и курсовых работ.
![Самоучитель Adobe After Effects 6.0](/storage/book-covers/84/8493a01f3f2ad533f801532092a350699300772b.jpg)
Обучение созданию профессиональных видеофильмов и обработки их на компьютере представлено в виде 12 уроков. Рассматривается, как с помощью программы Adobe After Effects можно редактировать и рисовать последовательность кадров, добавлять титры и заголовки, применять различные видеоэффекты, редактировать звуковое сопровождение фильма. Описывается процесс настройки прозрачности и наложения слоев видео для последующего экспорта фильма в различных форматах. Показываются способы создания анимации при масштабировании, поворотах и в движении с наложением титров и спецэффектов.
![История русской литературы XX века (20–90–е годы). Основные имена](/storage/book-covers/d8/d860f2d60662468b2d09f1006035d88ecc81bdcf.jpg)
Книга является пособием по истории русской литературы XX века (20-90-е годы). Она представляет собой первый том, за которым последует продолжение — «Литературный процесс» (в двух частях). Пособие призвано отразить современный научный взгляд на основные художественные ценности и тенденции развития русской литературы XX века.Издание предназначено для студентов филологических факультетов российских университетов, а также для аспирантов и преподавателей, — всех, кто занимается русской литературой.
![Материаловедение](/storage/book-covers/f2/f2866472365118a39b7ad9d23b9460f3f375d581.jpg)
Данный конспект лекций предназначен для студентов высших и средних специальных учебных заведений. В него входят сведения о древесине и древесных материалах, описываются их основные свойства. Дается характеристика металлов и сплавов, рассматриваются способы их применения. Приводятся основные сведения о лакокрасочных, смазочных, облицовочных материалах, а также классификация клеев и области их назначения.
![Микроэкономика](/storage/book-covers/29/2910249380ec5db03afe32a486701a77a59eba31.jpg)
В данном конспекте лекций в доступной форме изложены все основные вопросы по дисциплине «микроэкономика».Книга поможет получить основные знания и подготовиться к зачету или экзамену. Рекомендуется студентам экономических специальностей.