Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Как сделать популярный сайт." на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Январь 2003 → | ||||||
1
|
2
|
3
|
4
|
5
|
||
---|---|---|---|---|---|---|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
15
|
16
|
17
|
18
|
19
|
|
20
|
21
|
22
|
23
|
24
|
25
|
26
|
27
|
28
|
29
|
30
|
31
|
Статистика
-2 за неделю
PHP для начинающих - N4
Информационный Канал Subscribe.Ru |
|
||
|
||
В выпуске:
Введение Здравствуйте, дорогие друзья! В первую очередь хочу поздравить вас с Новогодними праздниками: наступившим 2003 годом, Рождеством и Старым новым годом! Хочу пожелать вам счастья, успехов и удачи во всех делах. Далее хочу извиниться за столь длительное отсутствие выпусков рассылки - в новогодние праздники как всегда не по-новогоднему много работы. Также извиняюсь перед всеми, кто, возможно, не получил от меня ответ на свое письмо. Друзья! Приходит действительно много писем, не успеваю со всеми разбираться. У меня часто спрашивают, есть ли у рассылки сайт и где можно посмотреть какую-нибудь дополнительную информацию по PHP. Да, сайт действительно есть. Однако это не совсем сайт рассылки. Дело в том, что я сейчас занимаюсь одним проектом, который мне передал мой коллега. Сайт очень большой и интересный, посвященный программированию - содержит множество книг, исходников (в том числе и по PHP). Существует он не один год и довольно популярен. Однако у моего знакомого в последнее время совершенно не хватает возможностей им заниматься. Ну, собственно, я и выразил желание перенять этот ресурс, чем в последнее время и занимаюсь :)) Но сайт еще не готов. Сейчас разрабатывается новый дизайн, идет полная реорганизация структуры, а также создание ПО, на котором будет функционировать весь сайт (а, надо сказать, база данных там очень большая). Сайтом я стал заниматься еще до создания рассылки. Сказать честно, не планировал в оперативном порядке связывать его с рассылкой (хотя понимал, что рассылке сайт будет нужен). Но, столкнувшись с несколькими вопросами по поводу сайта рассылки я понял, что это желательно сделать как можно быстрее. Чтож, хочу объявить, что в ближайшем времени сайт будет готов и у рассылки появиться постоянное место жительства, где можно будет найти архив, загрузить книги и статьи по теме, скрипты, а также пообщаться в форуме. Сейчас я прилагаю большие усилия для реорганизации проекта, как только будет готово - обязательно объявлю это во всеуслышание. Кстати, я думаю, многие возможно даже сталкивались с этим ресурсом. Однако пока не хочу называть его адрес - как все будет готово, сразу сообщу.
Типы данных в PHP Итак, сегодня у нас тема "Типы данных". Небольшая и несложная, но, надо сказать, жизненно важная тема. На основе типов строиться вся работа с данными в программе, что является, собственно говоря, самой главной функцией PHP. Переменные в PHP могут быть различных типов. Тип переменной определяет данные, которые в ней содержаться - например, числа или строки. Соответственно, тип также определяет действия, которые можно с переменной производить - например, можно складывать числа друг с другом, но нельзя складывать число со строкой (точнее можно, но это не сложение в прямом смысле и результат уже не будет уже числом). Итак, давайте разберемся, какие существуют основные типы данных. Числовой тип данных обозначает, что переменная содержит число и с ней можно производить любые арифметические действия. Например, умножение, деление, вычитание. Числа могут быть двух видов: целые и дробные. Пример:
<? Как вы видите, в дробном числе целая часть от дробной отделяется точкой. Основные действия, которые можно производить с числами:
<? Давайте рассмотрим более конкретный пример работы с числами:
<?
$b = 100;
/* можно использовать алгебру и Также, помимо основных действий (+,-,*...) в PHP есть также сокращенные действия, которые очень сильно облегчают жизнь программисту. Вот как они выглядят:
<?
Здесь строчка $a += 2; означает $a = $a + 2; Попробуйте попрактиковаться с этими действиями, очень полезно уметь ими пользоваться. Ну а сейчас давайте напишем более полезный пример, который будет кое-что для нас считать. Пусть это будет вычисление процентов от числа. Вспомните, как это делается в математике? Пусть есть переменная $a, от которой нужно посчитать кол-во процентов, которое записано в переменной $percent. Мы должны поступить так: умножить количество процентов на само число и разделить получившийся результат на 100. Посмотрим как выглядит подобный алгоритм в лаконичных терминах PHP: <? Обратите внимание, до чего же короткое получается выражение. Все сводиться к третьей строке кода, которая выводит нам числа, из которых мы и считаем сам результат (в этом примере, вывод будет такой: 10% от 355 = 35.5). Думаю, на этой строке стоит остановиться подробнее. Что делает уже известная вам функция echo()? Сначала она выводит строку, которая оформлена в двойных кавычках (" ... "), обрабатывая внутри нее переменные. Именно в двойных кавычках могут соседствовать обычные символы и переменные, значения которых в этом случае выводятся на экран. Если вы напишите это в одинарных кавычках, то значения переменных обрабатываться не будут (в этом и есть разница двойных и одинарных кавычек). Далее эта конструкция скрепляется точкой (что, в данном случае, равносильно запятой) с алгебраическим выражением, которое считает процент. Т.о. мы получаем короткую и простую конструкцию, которая одновременно и выводит и считает все, что нам нужно. Стоит отметить, что здесь сильно проявляется сходство PHP с языком Си. Если вы знакомы с этим языком, то подобные сокращения и "сжатый код" вас не удивят. Но если имеете опыт работы с другими языками (например Паскаль с его строгостью типов и выражений) или не имеете опыта программирования вообще, придется попрактиковаться в лаконичности кода. Это позволяет сильно оптимизировать программу и сократит размеры файла. Чтобы было понятнее, о чем я говорю, я хочу привести пример, как выглядела бы эта программа в Паскале (конечно, в терминах PHP): <? Как видите, это немного больше. Расписано, что называется, по шагам. Переменная типа "строка" содержит в себе набор любых символов. Оформляются строки двойными или одинарными кавычками:
<? Со строками, естественно, нельзя производить математических действий (нельзя ведь прибавить к букве "a" букву "z"), однако в некотором роде можно это делать совместно с числами. Здесь работает высокоэффективное преобразование типов, поистине доступное только в PHP. При этом действует такой принцип: если в строке записано число, например "15", то PHP будет производить арифметическое сложение строки и числа и возвращать число. Если строка содержит что-то кроме цифр, то результатом будет строка. Вот пример: <? echo $s+$a; // а здесь мы уже прибавляем строку к числу. Результат - 15.
$s = "Строка"; ?> Строки можно "склеивать" между собой, что в программировании называется "конкатенацией". Данная операция обозначается точкой "." или знаком "+". <?
$s1 .= $s;// как и в числах, действует сокращенная конкатенация. Это означается $s1 = $s1.$s;
Также в PHP можно обращаться к любому символу строки, указав его порядковый номер в квадратных скобках. Например, мы можем обратиться к символу "т" в переменной $s = "Строка", указав $s[1]; <?
$s[0] = $s[1]; // меняем символы в строке Существует множество функций для работы со строками. Есть довольное простые, такие как вычисление длины строки, а есть и довольно сложные, такие как регулярные выражения. Вот несколько самых простых, но полезных функций:
Логический оператор IF Очень часто в программе возникает необходимость выполнить проверку какого-нибудь условия. Например, является ли переменная $a числом или что больше $b или $c. Проверка логических условий осуществляется с помощью конструкции IF и логических действий, которые ему в этом помогают. Конструкция IF состоит из следующих частей: if (выражение) { < действие> } else { < действие> } Расшифровывается это следующим образом. Сначала указывается оператор if, который означает начало логической проверки. Далее в круглых скобках ( ... ) указывается выражение, именно оно и является условием проверки. После него идет действие (например, вывод строки) или блок действий (например, какие-нибудь расчеты), которые выполняются, если выражение после if истинное. Эти две части выражения являются обязательными. Однако помимо обязательной части существует дополнительная, указываемая при желании. Это конструкция else { <действие> }. Суть ее состоит в следующем: если выражение в if неверно и условие не выполняется, управление передается действию (или блоку действий), которое указано после else. По-русски это можно представить таким образом: ЕСЛИ (выражение) ТО {действия} ИНАЧЕ {действия} Пример: Пусть нам нужно выяснить, что больше - $a или $b. Если $a - вывести строку "A больше B", если нет - строку "B больше A". Выглядеть это будет следующим образом: <?
if ($a>$b) echo '$a больше, чем $b'; Как видите, в качестве выражения для проверки указано ($a>$b). Это звучит как "Если $a больше $b, то ... иначе ...". Символ ">" должен быть знаком вам из математики. Он обозначает "больше" и является в PHP одним из логических операторов. Далее, есть определенная особенность в действиях после IF и ELSE. Если после IF или ELSE стоит всего одно действие (например, вывод строки), то оно указывается как есть. Если блок из нескольких действий - то они обязательно берутся в круглые скобки { ... }. Например, пусть мы проверяем $a>$b и, в случае, если больше, то вычитаем из $a переменную $b и выводим на экран. Если нет - прибавляем и выводим. Вот как это выглядит: <? if ($a>$b) { } else { } ?> Cписок логических операторов, которые можно в любом количестве и в любой комбинации использовать в PHP:
Оператор РАВНО (==) Обратите внимание, в "равно" используется два знака равенства. Именно два: if ($f==$c) ... Это означает "ЕСЛИ $f РАВНО $C". Логическое "равно" очень сильно отличается от знака "приравнивание", обозначаемого одним знаком равенства. "Приравнивание" (=) означает занесение какого-либо значения в переменную, а логическое "равно" (==) именно проверку истинности равенства. Не забывайте про это. Если вы напишите в IF один знак равенства, то это будет ошибкой. И если напишите $a == $b+$c - это тоже будет ошибкой. Оператор НЕ (!) и НЕ РАВНО (!=) Оператор "!" означает отрицание или логическое "НЕ". Например, можно проверить, имеет ли переменная значение таким способом: if (!$a) {...}. Это означает ЕСЛИ (НЕ $a), ТО.... Соответственно, оператор "не равно" имеет этот символ (!=) Вот как можно проверить, равна ли одна переменная другой: if ($a != $b) { ... }. Операторы И (&&) и ИЛИ (||) Эти операторы обозначают логическое "И" и "ИЛИ". Например, нам нужно выполнить какие-либо действия, если переменная $a больше $b и меньше $c. Тогда мы выполним такую проверку: if (($a>$b) && ($a<$c)) { ... что-нибудь сделаем ... } Обратите внимание на круглые скобки в выражении - две отдельные проверки обособлены. Хоть в данном случае это и не обязательное условие, но выделение двух частей выражения позволяет навести порядок и придать проверке осмысленный вид.
Функции работы с переменными Есть также набор полезных функций, который работают с переменными. Вот несколько самых главных:
В следующем выпуске На этом на сегодня все. В следующем выпуске я расскажу о работе с циклами и как они используются в программе. Как всегда жду Ваших писем с вопросами, комментариями, предложениями и критикой!
С уважением, Дмитрий. |
||
Ведущий рассылки: Дмитрий. dmitry@eserver.ru |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||