27
Егер есепте бір қатарға емес бағана түрінде шығару керек болса, онда
тырнақшалар орнына
қатар ауыстыру HTML-тегін қою керек: echo
"
".$i; Сонда нәтижеде сандар бір баған бойына орналасқан түрде шығады.
Қарапайым логиткалық және шартты операторлар
Салыстыру қарапайым түрде ұйымдастырылады: "егер-онда-болмаса".
Бұл үшін PHP-де келесі конструкция қолданылады:
if ( ) { } else { }
бұл оператордың түрлі синтаксисі бар, бірақ жоғарыда келтірілген
синтаксис ең тиімді әрі дұрысм болып есептеледі.
Мысалы:
$a = 5;
$b = 9;
if ($a == $b) {echo $b - $a;} else {echo $b.$a;}
?>
Бағдарлама нәтижесі 95 - ті көрсетеді, себебі $a -ға $b тең емес, ал echo
$b.$a; командасы айнымалыларды рет-рнетімен шығарады. Мұндағы нүкте
айнымалыларды бір-бірімен жабыстыру үшін қолданылады.
Циклдер
Бағдарламалаудағы циклдер дегеніміз - бір операцияның бірнеше рет
қайталануы. PHP-де циклдерді ұйымдастыру үшін келесі операторлар
қолданылады: while, do…while, for және foreach. Циклге мысал ретінде бірнеше
файлдарды көшіру қызметін көрсетуге болады. Оның алгоритмі төмендегідей
болады:
файлдар санын беру;
көшірілген файлдар есептегішінің мәнін нөлге қою;
файлды көшіру;
есептігіштің мәнін берілген файлдар санына
теңдігін тексеру;
егер тең болмаса, онда көшірілген файлдар есептегішінің мәнін
арттыру және цикл басына;
қайта келу;
егер тең болса, онда циклды аяқтау.
Циклдық әр қайталануы итерация деп аталады.
Енді PHP-де циклдерді ұйымдастыру мысалын қарастырайық:
$i = 0;
$n = 10;
while ($i <=$n):
28
echo $i. “
\n” ;
$i++;
endwhile;
?>
Скрипттің мағынасы өте қарапайым. $i айнымалысына циклдың
басындағы мәнді тағайындаймыз да, $n айнымалысына циклдың соңындағы
мәнді тағайындаймыз. Ары қарай циклды while() операторы арқылы ашып,
жақшаның ішіне берілетін шартты жазамыз. Ол шарт $i <=$n болғанша
орындалады. Бұл цикл шарты бұлған заматта цикл аяқталады. еndwhile
операторы циклдың аяқталғанын білдіреді. Скрипт, браузер экранына баған
бойынша бірден онға дейінгі сандарды шығарады. Себебі echo операторының $i
айнымалысынан кейін қатарды ауыстыратын
HTML-тегін қойдық.
Жоғарыдағы есепке тағы да басқа бір вариантын көрсетейік:
$i = 0;
while ($i<=10)
{
echo $i++. “
\n”;
}
?>
Бұл екі бағдарламаның нәтижесі бірдей болады.
Енді PHP-де do…while операторының құрылысын қарастырайық. Бұл да
цикл болып саналады, оның while операторынан ерекшелігі “дейін” емес
“кейін”, яғни цикл жұмысы оператордан кейін аяқталады. do...while циклі үшін
тек бірақ синтаксис бар:
$i = 0;
do
{
echo $i. "
\n";
$i++;
}
while ($i <= 10);
?>
Енді for циклына мысал келтірейік, оның синтаксисі:
for (expr1; expr2; expr3) (операторлар тіізбегі)
(expr1) – өрнегі шартсыз болып есептелінеді және циклдың басында
орындалады. Әр итерацияның басында (expr2) өрнегі орындалады. Егер ол
ақиқат болса, онда цикл жалғасады да ішкі операторлар орындалады. Егер ол
жалған болса, онда цикл аяқталады да әр итерацияның соңында (expr3) өрнегі
29
орындалады. Бұл өрнектердің әрқайсысы бос болуы мүмкін. Егер (expr2) өрнегі
бос болса, онда цикл шексіз орындалады. Шексіз орындалуды break операторы
арқылы тоқтатуға болады.
Мысалы:
$a = 0;
while ($a < 5)
{
if ($arr[$a] == "atop" )
{
break;
}
$a++;
}
?>
Егер continue операторы кездесетін болса, онда басқару келесі жақын
циклге беріледі.
Мысалы:
while (list($key,$value)=each($arr))
{
if ($key 2)
{
continue;
}
}
Енді сандарды for операторы арқылы экранға шығару есебінің мүмкін
жолдарын қарастырайық.
Мысалы:
for ($i = 1; $i <= 10; $i++)
{ print $i ; }
Мысал 2 –
for ($i = 1;; $i++)
{ if ($i >10)
{ break; }
print $i;
}
Мысал 3 –
$i = 1;
for (;;)
{ if ($i > 10) { break; }
print $i; $i++;
}
30
Уақыт пен мерзім
PHP-де уақыт форматымен жұмыс істеу үшін көбінесе date функциясы
қолданылады. Оның синтаксисі $date = date("параметр"); Параметрлер бірнеше
болуы мүмкін және олар бір-бірінен үтір арқылы ажыратылады. Онда төмендегі
параметрлерді қолдануға болады:
а – "am" немесе "pm" мәндерін қабылдайды;
А – "AM" немесе "PM";
d – ай күні, сандық, екі сан (бірінші орынға нөл қою керек), яғни 01-ден
31-ге дейін;
D – апта күні, мәтіндік, үш әріп, мысалы: "Fri";
F – ай, сандық, мысалы: "February";
h – сағат, сандық, екі сан, 12 сағаттық формат;
H – сағат, сандық, екі сан, 24 сағаттық формат;
i – минут, сандық, екі сан, яғни 00-ден 59-ға дейін;
j – ай күні, сандық, бастапқы нөлсіз;
l – апта күні, мәтіндік, мысалы: "Wednesday";
L –төрт жылда қайталанатын жылды көрсетеді, яғни "0" немесе "1";
m – ай, сандық, яғни "01"-ден "12"-ге дейін;
M – ай, мәтіндік, үш әріп, мысалы: "Feb";
n – ай, сандық, бір сан, яғни "1"-ден "12"-ге дейін;
О – Гринвич уақыты бойынша сағат аралығы, мысалы: "+0200";
s – секунд, сандық, екі сан, яғни 00-ден 59-ға дейін;
S – ағылшынша реттік жалғау, мәтіндік, екі символ, мысалы: "nd" және
"th";
t – ағымдық айдағы күндер саны, яғни "28"-ден "31"-ге дейін;
U – Unix ғасырынан басталатын секунд, яғни 1970 жылдың 1 қаңтары;
Y – жыл, сандық, төрт сан;
w – апта күні, сандық, мысалы "0" саны жексенбіні білдіреді;
y – жыл, сандық, екі сан, мысалы: "99";
z – жыл күні, сандық, мысалы: "299".
Осы параметрлерді қолдану арқылы біз өзіміздің сайтымызда ағымдық
уақытты пайдалана аламыз. Оның ішінде ең көп қолданылатыны ағымдық
уақыт пен мерзімді шығару. Аптаны, айды, күнді шығару сайтта өте пайдалы
болып есептеледі. Мысалы, сайтымызға кірушілерді тәулікке байланысты
уақытпен қарсы алатын болсақ, онда бағдарлама коды төмендегідей болады:
$h = date("H")
if ($h >= 5 && $h <= 11) echo "Қайырлы таң !";
if ($h >= 12 && $h <= 18) echo "Саламатсызба !";
if ($h >= 19 && $h <= 24) echo "Қайырлы кеш !";
if ($h >= 1 && $h <= 4) echo "Қайырлы түн !";
?> .........................................................