پێشەکی
ئەم زنجیرە وانانەی لێرەوە بە زمانی کوردی دەنووسرێن، زادەی بیری تاکەکەسی خۆمان یان کەسێکی «چــــاوگ» نییە، بەڵکو لەسەر بنەمای دەقبەدەقی ئەو وانە زانستی و دروستانەیە کە لە سەرچاوەی فەرمی فێربوونی PHP/Manual ڕاژە دەکرێت. ئەم وانانە لە یەکەم هەنگاوە تاوەکو دواهەمین هەنگاو لە فێربوونی ئەم زمانە بەردەوام دەبێت. تەنها وەکو خوێنەر ئاگاداری ئەوەبە کە ئەم بابەتانە نوێ دەکرێنەوە و پێویستی بە چاککردنەوە و زیادکردنی بەردەوام هەیە. هەروەکو ئێمە دەنووسین جەنابیشت دەتوانیت دەستکاری بکەیت و چاکیان بکەیتەوە یان دەرکردن و زیادکردنی تێدا بکەیت. لە کۆتایی ئەم وانانەدا دەیکەین بە پەرتووکێکی ئەلیکترۆنی تاوەکو زیاتر سوودمەند بن.
پێداویستی
بۆ ئەوەی بتوانیت ئەم زمانە فێربیت، دەبێت زمانی HTML بە دروستی بزانیت. ئەگەر لە یەکێک لە زمانە گەورەکانی وەکو C و JAVA شارەزاییت هەبێت، زۆر پێشینەیەکی باشت بڕیوە و ئاسانتر و ڕوونترە لەلات. وێبداڕێژەری سەرکەوتوو ئەوەیە زمانی CSS بە سەرکەوتوویی بپێکێت، بۆیە تەماشای CSS بکە.
پاشان پێویستە کە دەستکاریکەرێکی/نووسەرێکی باشت هەبێت بۆ ئەم کارە، لە کاتی ئێستادا دەستکاریکەری خۆڕایی زۆرن و کارەکان بە سەرکەوتوویی و بێخەوش ڕادەپەڕێنن، لەوانە:
تێبینی: هەموو نووسەرەکانی WYSIWYG ئامۆژگاری نەکراون بۆ نووسینی کۆدەکان و شارەزایی لێیان بەڵگەی شارەزایی نییە لە هیچ زمانێک.
نووسەری WYSIWYG وەکو:
- FrontPage
- Dreamweaver
دەستکاریکەرێک بۆ نووسینی کۆدەکان:
- NotePad++
- Bluefish
- Geany
- Gedit
- Medit
- VIM
لە کۆتاییدا تۆ پێویستت بەوەیە ڕاژەیەک هەبێت کۆدەکانی PHPـی لەسەر وەگەڕ بخەیت. ڕاژەخواز زۆرن، لێرەدا بۆ بەکارهێنەرانی ویندۆز ئامۆژگاری دەکەین بە XAMPP.
بۆ بەکارهێنەرانی ویندۆز:
- XAMPP: هەرچەندە ڕاژەخوازی تر زۆرن بۆ ئەم کارە بەڵام بەگشتی ئەوە بە بنەڕەت دەزانین.
بۆ بەکارهێنەرانی لینوکس:
گورزەی Mysql-Server و Phpmyadmin و php دابمەزرێنە. یان بە شێوەیەکی دروستر وایە بڵێین LAMP دابمەزرێنە. ئەم سەرەتا و پێداویستییانە بناغەی وانەکانی داهاتووە، دەبێت بە دروستی و بەبێ هیچ کێشەیەک کارەکان ئەنجام بدەیت و لە بچووکترین کێشە بەدوای چارەسەر بگەڕێی و لە مەکۆکان بینووسیت.
لە ئوبونتو و دێبیان:
Bash
# apt-get install apache2 apache2-doc php5 php5-mysql mysql-server phpmyadmin
فیدۆرا:
Bash
# yum install apache2 apache2-doc php5 php5-mysql mysql-server phpmyadmin
پشکنینی ڕاژە
وێنەیەکی پەڕەی PHPinfo ئاسایی لەسەر ڕاژەی ئوبونتو.
بۆ ئەوەی زانیاری لەسەر دامەزراندن و جۆری هەڵبژاردنەکانی PHP بزانیت لەسەر ئەو ڕاژەیە، وەکو گۆڕاوەکان و بەستەری سەرەکی و GD Lib کە لەم ڕۆژەدا گرنگی تایبەتی هەیە، دامەزراندنی لەسەر ڕاژە و زۆری تر وەکو نرخی بارکردن و بیرۆکە. لە پەڕەیەکی نوێدا ئەم کۆدە دابنێ:
PHP
<?php
phpinfo();
?>
بۆ نموونە ناوی بنێ phpinfo.php و باری بکە نێو بوخچەی سەرەکی و بانگی بکە لە وێبگەڕ:
http://localhost/phpinfo.php
دەبێت زانیارییەکان نیشان بدات.
پاراستن لە PHP.ini
بە حوکمی توانای PHP لە بوارەکانی وێبدا و هەمیشە فراوانترکردنی کارەکانی، هەمان کات بە ڕێژەیی لە ڕێگای کون و کەلێنەکانەوە پەلامار و تێکدانەکان زۆرتر دەبێت. وەکو دەزانرێت کرۆکی ڕێکخستنی هەڵبژاردنەکانی PHP لە پەڕەی PHP.ini دایە. جا وەکو شێوەیەکی گشتی دەبێت هەڵبژاردنەکان تا ئەندازەیەک بنەڕەت بن و پاشان لەسەر خودی چۆنیەتی کاری ئەو ئامێرەی PHP وەستاوە. ئایا mod_phpـە یاخود suPHP یان FastCGI ــیە؟ وە چۆنیش ڕێکخراوە؟ ئەوانە هەر یەکە لە جۆر و شێوەکاردا خراپی و باشی خۆیان هەیە، بەگشتی mod_php ئاشناترە بە خەڵکی سەرەتایی و کەمتر ئاڵۆزە لەوانی تر.
زۆر گرنگە خاوەن ڕاژە یان بەڕێوبەری ڕاژەخوازەکە هیچ نەبێت شارەزاییەکی لە بنەماکانی دابەشکردنی دەسەڵات لە یونیکسدا (Group and User Permission) هەبێت، هەموو وانەکە و خاڵەکان بۆی ڕوونترە تا کەسێک کە بەکارهێنەری سەر سیستەمی تر بێت. ئێمە لەم وانانەدا هەوڵ دەدەین پەنجە بخەینە سەر گرنگترین و دیارترین هەنگاوەکانی پاراستنی PHP.ini و کورتەیەکی لەسەر بنووسین. هەمان کات دەیڵێین و دەیڵێینەوە: پاراستن پرۆسەیە نـــــــــەک دۆخ.
یەکێکە لە بڵاوترین پڕۆگرامۆکەکانی پەلاماردان کە بە C99/PHP-Shell ناسراوە.
php.ini لە کوێیە؟
ئەمەیان لە ڕاژەیەک و دابەشکردنێکی لینوکسەوە بۆ دابەشکردن و سیستەمێکی تر دەگۆڕێت، بۆ نموونە دێبیان و ئوبونتو و سوزە… هتد بەم شێوەیەن بە بنەڕەت (هەرچەندە هەندێک ڕاژە بە حوکمی کۆدی کراوەی سیستەمی لینوکسەوە Linux modified version بەکار دەبەن) بەڵام بەگشتی ئاوهان:
Bash
/etc/php5/apache2/php.ini
ئەگەر وەشاندنی PHP یەکسان بوو بە php5.
یان لەسەر ویندۆز و لەگەڵ ڕاژەخوازی XAMPP دا لێرەیە:
Plaintext
C:\xampp\php\php.ini
بۆ ڕاژەکانی تر بەتایبەت دابەشکردنی لینوکس دەتوانیت:
Bash
locate "php.ini"
بەکار بەریت بۆ دۆزینەوەیان.
گرنگترین هەڵبژاردنەکان چین؟
وەکو باسمان کرد خاڵەکان ئەوەی دیارە و گرنگە پەنجە دەخەینە سەری و هۆکار و شیکردنەوەی کورتی بۆ دەنووسین. هەروەها لە هەمووی گرنگتر پاش دەستکارییەکان دەبێت ڕاژەکارەکە Webserver(Apache) دابگیرسێنیتەوە تاوەکو گۆڕانکارییەکان جێگیر بن. بۆ نموونە لە ڕاژەی لینوکس:
Bash
/etc/init.d/apache2 restart
دیارە دەکرێت ئامراز و شێوەی تریش هەبن، بەڵام ئامانجەکە داگیرساندنەوەیەتی. هەمان شت زۆر گرنگە دوای هەموو کارەکان تەماشای پشکنینی ڕاژە (ماڵپەڕ و ڕاژەکە) بکەیت بزانیت گۆڕانکارییەکان ڕوویان داوە!؟
register_globals = Off
ڕێگە دەگرێت لەوەی لە ڕێگەی داواکردنی HTTP و شەکرۆکەوە (Cookies) گۆڕاوە جێگیرەکان (Global Variables) دەستکاری بکرێن. هەمان کاتدا وا دەکات $_REQUEST دروستر مامەڵەی لەگەڵ بکرێت.
allow_url_fopen = Off
ئەمە وا دەکات پڕۆگرامۆکە و سکریپتەکان تەنها لە ڕێگای خانەخوێوە بەستەرەکان وەربگرن و ئەمەش یەکێکە لەو خاڵانەی هەمیشە سوودی لێ وەردەگیرێت بۆ شکاندنی ڕاژە و سکریپت یان پڕۆگرامۆکەکان لەلایەن هاکەرەوە.
safe_mode = On
لە هەرە گرنگترین هەڵبژاردنەکان و پڕترین بابەتی جێگای لێدوانی پاراستنە و تا ئێستا گەورەترین باسە لە PHP دا، هەر بۆیە بە خۆشحاڵییەوە لە وەشاندنی PHP6 تەواو دەسڕێتەوە، ئەم مشتومڕە بنبڕ دەکرێت و نامێنێت. چالاککردنی بۆ ئەوەیە چیتر ئامێری PHP تەنها دەسەڵاتی ئەو پەڕگانەی هەبێت کە لەژێر ئەو بەکارهێنەرەدان و نەک ئەوانی تر. بە واتایەکی تر هەژماری www-data لەسەر ڕاژەی لینوکس بۆ نموونە سنووردار دەکات بۆ کوێ دەتوانن بڕۆن و تەماشای چی بتوانن بکەن. هەرچەندە لە خودی چۆنیەتی دامەزراندنی ئامێری PHP دا ئەمە دەگۆڕێت، وەکو لەوانەی سەرەوە وەکو suPHP و FastCGI ئاماژەمان پێکرد.
open_basedir = /path/to/www-directory
هەمان شت یەکێکە لە گرنگترین و بەرچاوترین خاڵەکان لە بواری پاراستندا. ئەمە وا دەکات ئەو بوخچەیە جێگیر بکرێت کە پڕۆگرامۆکەکانی تیادا وەگەڕ دەخرێت و لە دەرەوەیان هیچ کاریگەرییەکی نەبێت. بۆ نموونە لە ڕاژەکەی ئێرەدا یەکسانە بە:
/var/www/webuser/chawg
زۆر ڕاژە هەیە نەرمەکاڵای Plesk یان CPanel بەکار دەبەن، دەبێت زۆر بە وریاییەوە Vhost بەکارهێنەران ڕێک بخەن، بەتایبەت کاتێک Mod_Rewrite چالاک بێت. دەبێت زۆر وریا بیت لە ڕاژەی خاوەن کڕیاردا بۆ هەر بەکارهێنەرێک بچێت بۆ بەشەکەی خۆی نەکەمتر و نەزیاتر!
display_errors = Off
ئەمە ئەو ئەرکە قورستر دەکات، کە پەلاماردەر لە کاتی بوونی هەر هەڵەیەکدا هەموو بن و بنەچەی پەڕەکانی ماڵپەڕ و تەنانەت خشتەی SQL و ناوی بنکەی دراوە و ناوی بەکارهێنەر ببینێت. بۆ نموونە:
Plaintext
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'mysql_user'@'localhost'
(using password: YES) in W:wwwumdatabase2.php on line 2
Could not connect: Access denied for user 'mysql_user'@'localhost' (using password: YES)
زۆر ماڵپەڕی کوردی تەنها ناوی هاوپۆل یان ژمارەی ID بگۆڕە، دەتبات بۆ ئەم پەڕەیە و بەڵگەی تەواو نەشارەزایی دەردەخات!
هەڵەگەری لە کۆدەکان
بەڵام ئەوەمان لەبیر نەچێت ئێمە زۆر جار پێویستمان بەوەیە DEBUG پەڕەکە بکەین، چونکە لەم حاڵەتەدا بەکارهێنەر تەنها پەڕەیەکی سپی دەبینێت و نازانێت لە چیدا هەڵەی کردووە. چارەسەر بۆ ئەم گرفتە ئەوەیە لەو پەڕەیەی بانگی دەکات بە وێبگەڕ و پەڕەیەکی سپییە، ئەم کۆدەی تێئاخنێ لە سەری سەرەوە:
PHP
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
?>
disable_functions
ئەمە تایبەتمەندییەکی زۆر گرنگە کە دەتوانیت ئەو کردارانەی کە هەمیشە لە جێگای مشتومڕی پاراستندان لە بەکارهێنانی یان چالاککردنی ڕابگریت. بە واتایەکی تر ئەو کەلێنانەی جێگەی مەترسین و لە جۆری سیستەمەکاندا ساغ نەبوونەتەوە ناچالاکیان بکەیت. بەگشتی تا هەنووکە ئەمانە هەن:
Ini, TOML
disable_functions = escapeshellarg,escapeshellcmd,exec,passthru,pclose,popen,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,readfile,shell_exec,show_source,symlink,system
log_errors = On
ئەمەیان کاتێک هەڵە و ئاگاداری هەبوو دەنێردرێت بۆ پەڕگەیەکی دیاریکراو لەسەر ڕاژەکە تاوەکو تەماشا بکرێن و بخوێنرێنەوە، بەڵام لە هەندێک ڕاژەدا ئەمە بەرجەستە نییە وەکو ڕێڕەوێکی تەنها و ئامادەکراو، بەڵکو هەڵەکان لە Apache-Log دەخوێنرێنەوە. بۆ نموونە ڕاژەیەکی دێبیان یان ئوبونتو:
/var/log/apache2/error.log
زۆریش گرنگە ڕێگە بدەیت کڕیار یان بەکارهێنەر ئەم لۆگانە ببینێت، ئەمە لە ڕێگای ڕێکخستنەوە دەبێت بۆ هەریەک لەو بەکارهێنەرانە.
magic_quotes_gpc = On
گرنگی ئەمەیان لەوەدایە خاوەنی سەرەکی ڕاژە یان دەسەڵاتی یەکەم هەموو کارەکان دیاری دەکات چۆن کۆدەکان بنووسرێن لە ڕیزبەندا. هەروەها هەموو تاکخاڵ ‘، جووتخاڵ “، لارەهێڵی پێچەوانە \ و NULL هەمووی بە خۆکار بە \ بەربەست بکرێت، ئەمەش تا ئەندازەیەکی زۆر ڕێگە لە پەلاماری SQL-Injection دەگرێت.
سەرەتای PHP
کۆدەکانی PHP هەموو کات لەنێو کۆدەکانی HTML بنیات دەنرێت. بۆ چوونی ناو مۆدیوڵی PHP ــیەوە دەبێت بە <?php دەست پێ دەکات و کۆتاییهێنان بەم مۆدە بە ?> دەبێت. ئەم جۆرە شێوەپێدانە باوترین و گونجاترینە و بە خانەخوێکە دەڵێت کە لەنێو ئەم دوو هێمایەدا کۆدی PHP هەیە و ڕاژەکارەکە بەو پێی هەڵبژاردنە و ڕێکخستنانە مامەڵەی لەگەڵ دەکات. وە مەرجە هەموو کات پەڕەکان بە .php کۆتایی بێت. ئەمەش بە شێوەیەکی بنەڕەت ئێستا باوە، هەرچەندە لەلایەن بەڕێوەبەری سیستەمەکەوە دەتوانرێت بگۆڕدرێت. نموونەیەکی ئاسایی:
PHP
<?php
echo "Nmunei kodêkî PHP\n";
?>
وەکو ئاماژەمان پێداوە پێشتر، مۆدی PHP دەتوانرێت تەنها لەو شوێنە بانگ بکرێت کە دەتەوێت، بۆ نموونە:
HTML
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xml:lang="en" lang="en">
<head>
<title>Sillaw</title>
</head>
<body>
<?php
echo "<p>Lêre kodekanî PHP bnûse</p>\n";
?>
</body>
</html>
بەم نموونەیە دەمانەوێت بڵێین ئەو کۆدەی لەنێو مۆدەکەدا نەنووسراوە وەکو PHP مامەڵەی لەگەڵ ناکرێت و دەدرێتەوە بە وێبگەڕ بۆ خوێندنەوەی وەکو خۆی، بەبێ ئەوەی بچێتەوە ڕاژەکەوە لەوێ بە ئامێری PHP وەگەڕ بخریت و ئەنجا بدرێتەوە بە وێبگەڕ. ئەم ڕۆیشتن و خوێندنەوەی لەلایەن ڕاژەکار و ڕاژەخواز و پاشان دانەوەی بە وێبگەڕ، گرنگترین بنەمایە لەمەودوا بۆ تێگەیشتن لە زیندوویی و خۆکاری ئەم زمانە. ئەگەر سەرنجی بدەیت دەبینیت لە سەرەتای کۆدەکاندا ئەم دێڕە هەیە:
XML
<?xml version="1.0" encoding="utf-8"?>
ئەمە بریتییە لە header وە بوونی ئەمە بەو واتایەیە کە چیتر پێویستت بە setcookie و Header نابێت بۆ ڕێکخستنی.
یەکەم ئامانج لە هەموو زمانێکی داڕشتن و پڕۆگرامۆکەیەک دەرەنجامە. هەروەها گرنگە بزانین چۆن ڕیزبەند دەکرێت لەنێو کۆدەکاندا. ڕیزبەند بۆ دیاریکردنی بڕێکە دوای دانەوە و بانگکردنی. لە PHP دا بانگکردنی شتێک بەبێ ئەوەی مۆدی PHP بەجێ بهێڵیت وا باوە echo بەکار ببرێت. هەرچەندە ئەم بانگکردنە بەم شێوەیە شتێکە دەبێت تێگەیشتنێکی تەواوی هەبێت پێش تێگەیشتنی هەموو زمانەکە بەگشتی. با نموونەیەکی بۆ بهێنمەوە:
PHP
<?php
echo 'Deqeki asaiy u bangkirdni';
?>
بەڵام ئەوە بزانە echo کردارێک نییە بەڵکو بنیاتنەرێکی زمانە (language construct). ئەمە هەمان شت لە خودی ماڵپەڕی سەرەکی ئاماژەی بۆ کراوە بەم شێوەیە:
echo()is not actually a function (it is a language construct), so you are not required to use parentheses with it.
دووەم شت کە زۆر گرنگە بیزانین ڕیزبەندە، واتا ئەوەی دەکەوێتە نێوان ‘ ‘ ئەوەی لەنێواندایە echo بانگی دەکات و دەرەنجامی دەکات. بۆیە دەبێت ئەنجامی نموونەکەی سەرەوە ئەمە بێت، کاتێک بە وەگەڕخەرێکی PHP بانگ دەکرێت و دەخوێنرێتەوە:
Deqeki asaiy u bangkirdni
ئێستا ڕیزێکی تر بۆ هەمان نموونەی سەرەوە زیاد دەکەین:
PHP
<?php
echo 'Deqeki asaiy u bangkirdni';
echo 'Eme deqeki tr bo nmuneke';
?>
ئێستا هەمان کۆد و نموونە بەگەڕ بخەین ئەمە ئەنجامەکەیەتی:
Deqeki asaiy u bangkirdni Eme deqeki tr bo nmuneke
ئەگەر دیقەت بدەیت دەبینیت سەرەڕای ئەوەی هەردوو بانگکردنە لەسەر یەکن لە کۆدەکانی PHP دا بەڵام لە تەنیشتی یەک دراونەتەوە بە یەک دێڕ. بۆ ئەوەی دێڕی دووەم بکەوێتە خوار دێڕی یەکەمەوە لە کاتی دانەوەدا دەبێت <br/> لە کۆتایی یەکەم دێڕەوە دروست بکەین، تاوەکو دووەم دێڕ فڕێ بداتە خوار خۆیەوە. با نموونەکە بەم شێوەیە لێ بکەین:
PHP
<?php
echo 'Deqeki asaiy u bangkirdni<br/>';
echo 'Eme deqeki tr bo nmuneke';
?>
ئێستا دەرەنجامەکە ئەمە دەبێت:
Plaintext
Deqeki asaiy u bangkirdni
Eme deqeki tr bo nmuneke
دیاریکردنی ڕیزبەند
ئەوەی زۆر گرنگە بیزانیت دەبێت هەموو کات ڕیزبەند دروست نیشانی ئامێری PHP بدرێت تاوەکو بە دروستی دەرەنجامیان بداتەوە. هەروەها لە کۆتاییدا هەموو کات خاڵ و فاریزە ; بۆ فرمان و ئاگاداری کە ڕیزبەندییەکە کۆتایی هاتووە. خستنە ناو ڕیزبەندەوە بە تاکخاڵ دەکرێت ' یان بە جووتخاڵ ". هەردووکیان کارەکە دەکەن بەڵام لە هەندێک شوێن و کاتی هەستیاردا دەبێت وریا بین. هەوڵ دەدەین بەگوێرەی ڕوونکردنەوەکان و نموونەکە بگەینە مەبەست.
PHP
<?php
echo 'Deqek be ' Takxall';
echo 'Deqeki tr';
?>
ئەگەر تەماشا بکەیت ڕەنگکردنەکان تێکچوون، دەرەنجامەکەش هەمان شت. لێرەدا جووتخاڵ " قسەی خۆی هەیە و دەتوانێت هەمان دەق دروست بداتەوە. با نموونەیەک بهێنینەوە و تەماشایەکی جوانی ڕەنگکردنی ناو ڕیزبەندەکە بکە:
PHP
<?php
echo "Deqek be ' Cutxall";
echo "Deqeki tr";
?>
ئەمجارەیان دروستە و تاکخاڵ لە ناوەڕاستەوە هەژمار ناکرێت و ڕیزبەندییەکە ناشێوێنێت. تەماشای هەردوو نموونەکە بکە لە ڕووی تاقیکردنەوە و دەرەنجام و ڕەنگکردنەوە. یان دەتوانیت ڕیزەدەربازبوون (Escape-Sequenz) تاوەکو ناو ڕیزبەندەکە ' نەخوێنرێتەوە بەڵکو هەژماری کۆتاییەکەی بکات. وەکو لەم نموونەیەدا دەردەکەوێت:
PHP
<?php
echo 'Deqek be \' Takxall';
echo 'Deqeki tr';
?>
ئێستا دەتوانین هەمان کۆد بەکار بەرینەوە بەڵام ئەمجارە بە جووتخاڵ " وەکو ئەم نموونەیە:
PHP
<?php
echo "Deqek be \" Cutxall";
echo "Deqeki tr";
?>
لێرەدا پرسیار ئەوەیە چۆن بتوانم ڕیزەدەربازبوون \ دروست بکات بەبێ بەکارهێنانی تاکخاڵ و جووتخاڵ؟ با تەماشایەکی ئەم نموونەیە بکەین:
PHP
<?php
echo "Eme le cutxallda \\ bzane chone";
echo 'eme le takxallda \\ bzane chone';
?>
هەرچەندە تاکخاڵ و جووتخاڵ هەمان کرداریان هەیە و دەتوانرێت بەگوێرەی ئارەزووی نووسەر بەکار ببرێن، بەڵام جووتخاڵ زیاتر دەتوانێت ڕیزەدەربازبوون \ دەربخات و زەقی بکاتەوە.
خشتەی ڕیزەدەربازبوون \ [escape sequences]
| Code | Description |
\n | A newline |
\r | A carriage return, often used for network protocols. |
\t | A tab |
\v | A vertical tab, not often used |
\f | A form feed, even used less than \v |
\$ | The dollar character. Without these sequences php tries to find a variable and fills in the content of the variable. |
\0 to \777 | A character from the area of 0x000 to 0x1FF |
\x0 to \xFF | A character from the area of 0x00 to 0xFF |
جۆری تری ڕیزبەند دیاریکردن
لەپاڵ جووتخاڵ و تاکخاڵدا دوو شێوەی تری دیاریکردنی ڕیزبەند هەیە وەکو heredocs & nowdoc. بۆ ڕوونکردنەوە و زیاتر وردبوونەوە تەماشای Strings بکە.
سەرنج نووسین (Comments)
سەرنج نووسین وەکو باوە بۆ ئەوەیە زیاتر ڕوونکردنەوە بدەیت بە فرمان و کار، شوێن و داخوازی. هەمان کات دەتوانێت سوودمەند بێت بۆ یەکێک پاش خۆت کە ئەو کۆدانە بخوێنێتەوە بەبێ کێشە و مەبەستەکە بگات بزانێت بۆ ئەم کردارە کراوە. زۆر کات بۆ خودی کۆدنووسەکەش پێویستە کاتێک زۆر کۆد بنووسێت. بە هەمان شێوە دەتوانرێت فرمان و چەند کردەیەکی پێ ناچالاک بکەیت. لە HTML دا فێربوویت کە سەرنج نووسین بەهۆی “ وە دەکرێت.
جۆرەکانی سەرنج PHP
بەگشتی لە PHPدا چوار جۆر سەرنج نووسین هەیە. هەرچەندە ٣ دانەیان بەکار دەبرێن و بڵاون. لەو ٣ دانەیشدا دوانیان زۆر گرنگی تایبەتیان هەیە و وەکو بنەڕەت لە زۆربەی زۆری کۆدەکاندا بەرچاومان دەکەوێت.
- سەرنجی تاکدێڕی (one line comments)
- سەرنجی کۆمەڵەدێڕی (multi line comments)
سەرنجی تاکدێڕی
ئەم جۆرەیان تاوەکو کۆتایی مۆدێکی PHP کە بە ?> کۆتایی دێت بڕ دەکات، وە هەمیشە بە // دەست پێ دەکات. بەڵام ئاگاداری ئەوەبە لەگەڵ جووت ڕیزەدەربازبوون \\ لێت نەگۆڕێت. هەوڵ بدە لەم نموونانەی خوارەوە زیاتر ڕوون بێتەوە لەلات:
PHP
<?php
echo 'Deqek'; // eme Deqek nishan dedat
// Deqeki tr bnuse
echo 'Deqeki tr';
// echo 'Karnakem chunke lenaw rizbendek kirawim';
echo 'Karnakem chunke lenaw // rizbendek kirawim';
// Serinc derrwat taweku kotaiy ?><?php echo 'Min tewaw itr Serinc nim '; ?>
ئەگەر تەماشای بکەیت دەبینیت هەموو // نەبووەتە سەرنج. تکایە جوان دیقەتی ڕستەکار، داڕشتن (Syntax) بدە. بزانە چۆنە؟ و چۆن ڕەنگەکان کران؟
سەرنجی کۆمەڵەدێڕی
ئەمەیان باشترە و ئامۆژگاری کراوە ئەگەر سەرنجەکان نزیکەی دێڕێک یان کۆمەڵێک دێڕ بن. هەروەها لە سەرنجی تاکدێڕدا لە پێش ?> کۆتاییان دەهات. بەڵام لەمەیاندا بەم شێوەیە /* دەست پێ دەکات و بە */ کۆتایی دێت بەم شێوەیە:
PHP
/* Hemu deqek lenaw emeda weku Serinc derdekewt le PHP da */
ئەوەی لەو نێوانەدا بێت بە سەرنج و مردوو دەژمێرێت، ناوخوێندرێتەوە وەکو کۆدێکی نێو مۆدی PHP. وەکو لەم نموونەیەدا دەیبینن:
PHP
<?php
echo "Disanewe serinc nusin";
/* ew kodei serewe chalake
hemise ewei dekewete erewe
ne reng ne frmani nabet
hergizish chalak nabet
cwan diqeti bde ;)*/
echo "Disanewe hatinewe naw codi new MODi PHP.";
?>
یان ڕوونتر وەکو ئەم نموونەیە:
PHP
<?php
echo "Disanewe serinc nusin";
/* ew kodei serewe chalake
hemise ewei dekewete erewe
ne reng ne frmani nabet
hergizish chalak nabet
cwan diqeti bde ;)
*/
echo "Disanewe hatinewe naw codi new MODi PHP.";
?>
وەکو ئاماژەمان پێدا ئەوەی لەو نێوانەدا بێت بە سەرنج و مردوو هەژمار دەکرێت، ئەگەر بەم شێوەیەش بێت:
PHP
<?php
/***********************
* Darishtni Codekan Lerewe *
***********************/
echo "Codekan bang bike";
?>
لێرەدا بۆمان دەردەکەوێت ئەگەر مۆدی PHP کۆتایی هات ?>. ئەوە ئەم کۆتایی نایەت.
سەرنجی لە شێوەی PHPDoc Style
ئەم جۆرەیان هەمان شێوەی سەرنجی کۆمەڵەدێڕە بەڵام بە /** وە پێش کۆتایی پێویستی بە بۆشاییەکە ئەنجا */. هەرچەندە زۆر کات دێنەوە سەری دێڕ ئەنجا کۆتایی بە سەرنجەکە دێنن. وەکو لەم نموونەیەدا دەیبینن:
PHP
<?php
/**
Serinc le shewei PHPDoc Style
*/
echo "Hemisan Codeki tri PHP dubare chalak";
?>
ئێستا پرسیارێک دێتە پێشەوە: بۆ دوو جۆرە سەرنج نووسین بۆ کۆمەڵەدێڕ، کە بە ئەندازەیەکی کەمیش نەبێت جیاوازی نابینرێت؟ لە سەرنجی کۆمەڵەدێڕی PHPDoc Style دا دەتوانرێت سەرنج بۆ بەشێکی دیاریکراو لە کردارێکی ناو PHP دا ئاماژەی پێ بکرێت. هەروەها نەرمەکاڵای تایبەت دەتوانێت ئەو جۆرە سەرنجەی PHPDoc بخوێنێتەوە نیشانی بداتەوە لە شێوەی HTML دا. ئەمەش تەواو گرنگە لە پڕۆژە گەورەکان و فرە نووسەرەکان. با تەماشایەکی ئەم نموونەیە بکەین:
PHP
<?php
/**
* Output a number.
*
* The following function outpus the given number.
*
* @param i The number to print.
*/
function output_number($i) {
// ...
}
?>
سەرنج بە
PHP لە بنەڕەتدا بۆ سەرنج وەکو ‘C’, ‘C++’ and Unix shell-style Perl style کار دەکات. بەڵام دەکرێت لە جیاتی سەرنجی تاکدێڕی ئەم شێوەیەش بەکار ببرێت #. لەم نموونەیەدا بۆت ڕوون دەبێتەوە چۆنە؟
PHP
<?php # echo 'Deqeki Asaiy'; ?>
ناچالاککردن بە سەرنج (مراندن)
بۆ نموونە کۆمەڵێک کۆد و کردار و فرمانمان نووسیوە دەمانەوێت بەبێ ئەوە تاقیان بکەینەوە. کارێکی نادروستە ئەگەر بچین کۆدەکە بسڕینەوە، چونکە دەکرێت ئەوەی دەیسڕینەوە پەیوەندی بە باسەکەوە نەبێت. بۆیە وا باشترە ناچالاکی بکەین. ئەگەر دوایی ویستمانەوە چالاکی بکەینەوە.
بۆ ڕیزێک دەتوانین سەرنجی تاکدێڕ بەکار بەرین وەکو ئێرە:
PHP
<?php
firmani_yekem();
//firmani_dwem(); eme Firmane nachalake
firmani_seiyem();
?>
دەبینین فرمانی دووەم بە سەرنج دەرپەڕێنراوە و ناچالاکە.
کۆمەڵە دێڕێک پێکەوە، وەکو ئێرە:
PHP
<?php
firmani_yekem();
/*firmani_dwem();
firmani_seiyem();
firmani_chwarem();
firmani_pencem():
firmani_sheshem();*/
firmani_hewtem();
?>
دەتوانیت دیسان فرمانەکان چالاک بکەیتەوە وەکو ئێرە:
PHP
<?php
firmani_yekem();
//*
firmani_dwem();
firmani_seiyem();
firmani_chwarem();
firmani_pencem():
firmani_sheshem();
//*/
firmani_hewtem();
?>
دەتوانرێت سەرنج درێژ بکرێتەوە وەکو ئێرە:
PHP
<?php
firmani_yekem();
/*
firmani_dwem();
firmani_seiyem();
/*
firmani_chwarem();
firmani_pencem():
firmani_sheshem();
*/
firmani_hewtem();
?>
نموونەیەکی تر بۆ خۆت:
PHP
<?php
do_this();
/*
do_that();
/*
deactivated();
deactivated2();
*/
and_this();
*/
and_that();
?>
بۆ زیاتر تێگەیشتن هەمان شێوە بڕۆوە سەر Comments بۆ بینینی نموونە و زانیاری زیاتر.
گۆڕاو (Variable)
گۆڕاو بریتییە لە شوێنی پاشەکەوتکردن لە گەورە پاشەکەوتکەرێکی وەکو کۆمپیوتەردا، ئەمە وەکو تێگەیشتنێکی ڕووکەشی بۆ تێگەیشتن لە مانای گۆڕاو. درووسترە بڵێن بریتییە لە قاپێکی پڕ لە نرخ و گۆڕاو، لە هەر کاتێکدا بتەوێت دەست بەریتەوە بۆ نرخ و گۆڕاوەکانی نێو ئەو قاپە. ئێمە وا دادەنێین گەورە پاشەکەوتکەرەکە بریتییە لە ماڵپەڕی چــــاوگ وە لەنێو ئەو گەورە پاشەکەوتکەرەدا قاپێکی پڕ لە گۆڕاومان هەیە کە بریتین لە بەستەر و ڕوونکردنەوە بەسوودەکان بۆ تێگەیشتن لە مانای وێب و سیستەمی کارگێڕی لینوکس و سەرچاوەی کراوە. هەرکات ویستمان بانگی بەستەرێکی یان گۆڕاوێکی نێو ئەو قاپە بکەین کە نرخەکەی یەکسانە بە بابەتێکی بەسوود، ئەوە دانانی گۆڕاو نرخێک بۆ ئەو بەستەرە بابەتەکە دێنینە پێشەوە وە دەیناسێنین کە ئەمە هەیە و دەتوانرێت بۆ هەنگاوی داهاتوو سوودمەند بێت، هەروەها نرخەکانی تر و بۆ گۆڕاوەکان هەر دەکاتە بەستەر و بابەتێکی بەسوودی تر. هەمیشە بیر بکەرەوە لەوەی کە دانانی نرخی گۆڕاو بۆ کۆتایی پڕۆژەکەت سەقامگیر بێت، لە کاتی پێداویستی هەر گۆڕاوێکی نوێ. باشترە و زانستی ترە نرخێکی نوێ بۆ گۆڕاوێکی تر دروست بکرێن و داوای بکەیتەوە. نەک دەستکاری گۆڕاوێک بکەین کە نرخەکەیمان پێشتر جێگیر کردووە. وا بزانم پێناسەکە تۆزێک ئاڵۆزە، بەڵام بە هێنانەوەی نموونە و بەردەوامی وانەکان هەنگاو هەنگاو دەچینە پێشێ.
جۆری دراوەی (data type)ــی گۆڕاو چین؟
دوو جۆرە جۆری دراوەمان هەیە کە دەمانەوێت وەکو بنکەی سەرەتای فێربوونی PHP بیزانین.
- جۆری دراوەی ڕیزبەند String.
- جۆری دراوەی تر کە بریتین لە ژمارەکان Integer.
دیارە زۆرن بەڵام وەکو تێبینییەک و ڕوونکردنەوەیەک نووسیمان بۆ نزیکبوونەوە لە تێگەیشتنی مانای گۆڕاو لە PHP. بەگشتی تا وەشاندنی هەنووکەیی ئەم جۆرە دراوانەمان هەیە:
boolean, integer, float, double, String, Array, Object, Resource, Null
تێبینی: PHP زۆر چوست و کارامانە لەگەڵ جۆری دراوەی
String,Integer,Floatکار دەکات. وە پێویست ناکات بە خۆخەریک کردن لەگەڵ چۆنیەتی مامەڵەکردنی لەگەڵ جۆری دراوەدا، بە شێوەیەکی خۆکار خۆی دەناسرێتەوە لە PHP.
ناوی گۆڕاوە ڕێپێدراوەکان کامانەن؟
دەبێت هەموو کات بزانین وەکو زمانەکانی تری C, JS، دەبێت هەموو کات گۆڕاوەکان بە هێمای دۆلار $ دەست پێ بکەن. وە هیچ بۆشایی لە نێوان نەبێت (دەتوانرێت هێڵی خوارەوە _ بەکار بهێنرێت بۆ نێوان دوو وشەی جودا) وە پیتی گەورە و پیتی بچووک هەمیشە ڕەچاو بکرێت. وە دەبێت لە پێناسەدا بۆ نرخێک = بەکار ببرێت. بۆ نموونە:
PHP
<?php
$var = 'Shteke';
$Var = 'Shteki tre';
$VaR = 'Eme shteki tr';
$_VaR = 'Eme tewaw shteki tre';
$10Var = 'Eme nadruste chunke jimare nabet!';
$yek_gorraw = $dwem_gorraw; // emesh druste u raste
?>
تێبینی گرنگ: نابێت ناوە پێشوەخت پاشەکەوتکراوەکانی وەکو (
if,while,switch) وەکو ناوی گۆڕاو بەکار ببرێن.
تاوەکو زیاتر لە گۆڕاوەکان تێبگەیت، دەتوانیت سەردانی Variables بکەیت.
گرێدان (Concatenation)
گرێدانی دوو ڕیزبەندی و گۆڕاو یان کۆمەڵێک پێکەوە لە زمانی PHP دا بە . تەنها خاڵ دەکرێت. تەماشایەکی ئەم نموونەیە بکە:
PHP
<?php
'Azad'.'Awat'; // encamekei dekate "AzadAwat"
?>
بۆیە گرنگ نییە گرێدانەکە لە نێوان کێ و کێدایە. گۆڕاوە یان ڕستەبەندە یان ژمارەیە. تەماشایەکی ئەم نموونانە بکە:
PHP
<?php
'Shtek'.'Hich';
'Hich'.$var;
$var1.$var2;
?>
ئەم نموونەیە زۆر پراکتیکی نییە، بەڵکو زیاتر بۆ ڕوونکردنەوەیە. بۆیە تۆ دەتوانیت بە echo بانگی ئەنجامی گرێدانەکە بکەیت لەگەڵ ڕیزبەندێکدا. وەکو ئێرە:
PHP
<?php
$deq = 'Shtek'.'hich';
echo $gorraw.'Rizbendek';
?>
گرێدان بێسنوورە و زۆر بەرچاو دەکەوێت لە کاتی نووسینی کۆد و فرماندا لە پڕۆگرامۆکەیەکدا.
PHP
<?php
$name = $naw.' '.$nawiBawk;
// naw + boshaiyek + nawiBawk
echo 'Min nawim '.$name.', Em katetan bash.';
?>
لەم نموونەیەی سەرەوەدا بۆت دەردەکەوێت گرێدانی دوو گۆڕاو لە نرخی گۆڕاوێکدا چۆنە.
گرێدان و درێژکردنەوە لەگەڵ کۆدی HTML دا
مانای گرێدان وەکو باسمان کرد گرنگی تایبەتی خۆی هەیە، هەروەها دەتوانێت هەنگاوەکان قەدبڕ بکات و ئامانج زووتر بپێکێت لەوەی کە هەیە. با تەماشایەکی ئەم نموونەیەی خوارەوە بکەین بزانین چۆن نرخێک گرێ دەدەین و لەنێو کۆدێکی HTML دەیدەینەوە. با لەم نموونەیەدا سێ هەڵبژاردن بۆ ئەو جۆرە گرێدانە بکەین:
PHP
<?php
/* min demewet em Bestere pek benim <a href="index.php?section=XYZ">Link</a>
leheman katda [XYZ] le gorrawekewe (Variable) werdegret.
*/
$var = 'XYZ';
echo '<a href="index.php?section='.$var.'">Bester</a>'; // bashtrin hellbjardin
echo "<a href=\"index.php?section=\".$var.\">Link</a>";
// emeyan <a href="index.php?section=".XYZ.">Link</a> dedate destewe ke namanewet u narreke!
echo '<a href="index.php?section=".$var.">Link</a>';
// emeyan <a href="index.php?section=".$var.">Link</a> dedate destewe
?>
وەکو دەبینین یەکەم بانگکردن باشترین دەرپەڕاندن و گرێدانە و مەبەستەکەمان دەپێکێت. ئەوەی گرنگە دەبێت بزانین ئێمە چۆن کارەکان دەکەین و چۆن بە دوای یەکیان دەکەین. واتا هەنگاوەکان پێش و پاشی یەکتر نەکەون. زۆرن بۆ نموونە لە دوای گرێدانەکە .'" بەکار دەبەن یان ."\". کە ئەمانە وەکو ڕێڕەو نادروستە و سەرئێشەیە زیاتر. باشترین و دروسترین ڕێگا ئەوەیە کە یەکەم جار بەستەرەکە دروست بکەیت لە کۆدەکانی HTML و دوای ئەوە گۆڕاوەکەی تێئاخنی. هەروەها زۆر دەبێت وریای ئەوە بیت: جووتخاڵ سەرەوە لە ڕیزبەندی بەکار دەبەیت یان تاکخاڵ. هەمیشە وا بکەیت ئەنجامەکەی پاکتر و کورتتر بێت. وەکو لەم نموونەیەدا دیارە:
PHP
<?php
echo '<a href="index.php?section=XYZ">Link</a>';
// ^^^
// yekemcar '..' le cegay dabne(eme helleye ger betenha bet).
// |
// V
echo '<a href="index.php?section='..'">Link</a>';
// ^^
// lekotaiyda Gorraw (Variable) teaxne
// |
// V
echo '<a href="index.php?section='.$var.'">Link</a>';
?>
زانیاری زیاتر لە جۆری ئەم گرێدانانە دەتوانن sprintf ببینن.
درێژکردنەوەی گرێدان
درێژکردنەوەی گرێدانەکان (وەکو باسمان کرد گرێدان بێسنوورە). هەموو کات دەتوانرێت بە .= درێژ بکرێنەوە بۆ ڕێزی خوارتر. ئەمە لەو کاتانە پێویستە کە ڕیزبەندێک کۆدی HTML بۆ چەند دێڕێک درێژ بووبێتەوە. لەم نموونەیەی خوارەوەدا دەیبینن:
PHP
<html>
<body>
<?php
$litr = 14;
$nrix = 1.35;
$paredan = $litr * $nrix;
$koi1 = "litr";
$koi2 = 'Dinar';
/*
####################################
## Temashai gredani be (.=) bike ##
####################################
*/
$koiGishti = "Prrkirdini Tanki: " . $litr . " " . $koi1;
$koiGishti .= " Nirxekei " . $paredan . " " . $koi2 . "<p>";
echo $koiGishti;
echo "Prrkirdini Tanki: $litr $koi1 Nirxekei $paredan $koi2<p>";
echo 'Prrkirdini Tanki: $litr $koi1 Nirxekei $paredan $koi2<p>';
?>
</body>
</html>
دانیشتنی PHP (Session)
بۆ کۆگاکردنی زانیاری دەربارەی یان گۆڕینی ڕێکخستنەکان بۆ دانیشتنی (session) بەکارهێنەرێک، گۆڕاوەکانی session (خول – دانیشتن) زانیاری دەربارەی تاکە بەکارهێنەرێک لەخۆی دەگرێت، وە بەردەستە بۆ هەموو پەڕەکان لە یەک نەرمەواڵەدا.
گۆڕاوەکانی دانیشتنی PHP (PHP Session Variables)
کاتێک تۆ لەگەڵ نەرمەواڵەیەک کار دەکەیت، دەیکەیتەوە، هەندێ گۆڕانکاری دەکەیت و دواتر دایدەخەیت. ئەوە زۆرتر وەکو دانیشتنێک (session) وایە، کۆمپیوتەرەکە دەزانێت تۆ کێی، وە دەزانێت لەکوێ دەستت کردووە بە نەرمەواڵەکە و لەکوێ کۆتاییت پێهێناوە، بەڵام لەسەر ئینتەرنێت کێشەیەک هەیە: ڕاژەکاری وێب نازانێت تۆ کێی و چی دەکەی چونکە ناونیشانی HTTP ناوچەیی ناناسێ/لەخۆناگرێت. دانیشتنێکی PHP ئەو کێشەیە چارەسەر دەکات بە ڕێگادان پێت بۆ کۆگاکردنی زانیاری بەکارهێنەر لەسەر ڕاژە بۆ بەکارهێنانی دواتر (بۆ نموونە: ناوی بەکارهێنەر، کاڵا و شتمەکەکانی بازاڕکردن… هتد). هەرچۆنێکە زانیاری دانیشتن کاتییە و لە دوای ئەوەی بەکارهێنەر وێبگەی جێهێشت دەسڕدرێتەوە. ئەگەر تۆ کۆگایەکی هەمیشەییت پێویستە، دەتوانیت داتاکان کۆگا بکەی لە بنکەدراوەیەک. دانیشتنەکان کار دەکەن بەهۆی ناونیشانی شاز/تاک (unique id “UID) بۆ هەر سەردانکەرێک لەگەڵ کۆگاکردنی گۆڕاوەکان بنچینەکراو لەسەر ئەو ناونیشانە (UID).
دەستپێکردنی دانیشتنێکی PHP
پێش ئەوەی بتوانی زانیاری بەکارهێنەر کۆگا بکەیت لە دانیشتنی PHP، پێویستە سەرەتا دەست بکەیت بە دانیشتنەکە.
تێبینی گرنگ: نەخشەی
session_start()پێویستە دەربکەوێت لە پێش تاگی<html>.
PHP
<?php session_start(); ?>
<html>
<body>
</body>
</html>
ئەو کۆدەی سەرەوە دانیشتنی بەکارهێنەر تۆمار دەکات لەگەڵ ڕاژەکە، ڕێگات دەدات بۆ دەستکردن بە پاشەکەوتکردنی زانیاری بەکارهێنەر و پێکهێنانی ناونیشانێکی شاز/تاک (UID) بۆ ئەو دانیشتنەی بەکارهێنەرە.
کۆگاکردنی گۆڕاوێکی دانیشتن
ڕێگا ڕاستەکە بۆ کۆگاکردن و هێنانەوەی گۆڕاوەکانی دانیشتن بریتییە لەوەی گۆڕاوی PHP $_SESSION بۆ بار ببەیت:
PHP
<?php
session_start();
// store session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>
دەرچوو:
Pageviews=1
لە نموونەکەی خوارەوە، ژمێریارییەکی سادەی نیشاندان-پەڕەمان دروست دەکەین، نەخشەی isset() گۆڕاوەکانی “views” دەپشکنێ بۆ دڵنیابوون لە دانانیان. ئێمە دەتوانین ژمێریاری خۆمان بەکار بەرین، ئەگەر “views” بوونی نەبوو، گۆڕاوێکی “views” دروست دەکەین و بۆ 1 دایدەنێین:
PHP
<?php
session_start();
if(isset($_SESSION['views']))
$_SESSION['views']=$_SESSION['views']+1;
else
$_SESSION['views']=1;
echo "Views=". $_SESSION['views'];
?>
ڕووخاندنی دانیشتنێک
ئەگەر وا دەخوازیت هەندێ داتای دانیشتن بسڕیتەوە، دەتوانی نەخشەی unset() یان session_destroy() بەکار بەریت. نەخشەی unset() بەکاردێت بۆ ئازادکردنی گۆڕاوی دانیشتنێکی دیاریکراو:
PHP
<?php
unset($_SESSION['views']);
?>
هەروەها دەتوانیت بەتەواوی دانیشتنەکە بڕووخێنیت بە بانگکردنی نەخشەی session_destroy():
PHP
<?php
session_destroy();
?>
لەیادت بێ بە بەکارهێنانی نەخشەی session_destroy() دانیشتنەکەت لە بنەڕەتەوە دادەنێتەوە و هەموو داتا کۆگاکراوەکانی دانیشتنەکەت لەدەست دەدەیت.
ژمارەکان لە PHP
تاوەکو لە ناو PHP دا ئەنجامی بڕگە ژمارەییەکانی دەست بکەوێت لەنێو گۆڕاوێکدا، دەبێت جۆری داتای ژمارەیی بەکار بهێنێت تاوەکو ئەنجامەکەی لە دەرەوەی گۆڕاوەکە بداتەوە. لە هەمووی نادروستر ئەوەیە، کە خودی ژمارەکان لەنێو ڕیزبەندییەک بەکار بەریت و کۆیان بکاتەوە وەکو ئێرە:
PHP
<?php
echo "5"+"9";
?>
کە ئەنجامی کۆکردنەوەیان دەکاتە 14. ئەمەش لەگەڵ یاساکاندا ناگونجێت کە ڕیزبەندییەک بەکار ببرێت تەنها و تەنها بۆ هەڵگرتنی ژمارەیەک و کۆکردنەوەی لەگەڵ هەمان شێوەیەیدا، بۆیە لە PHPدا دوو جۆرە ژمارەمان هەیە.
ژمارەی تەواو Integer
ژمارە تەواوەکان بریتین لە هەموو ژمارەکان بە ڕووتی بەبێ داشکاندن و بڕگەکردن تیایدا. وەکو ژمارەکانی 4, 19, 72, 143 هەروەها ژمارە نێگاتیڤەکان وەکو -4, -19, -72, -143. لە PHP دا ژمارەکان لەناو کۆدەکان دەنووسرێن و ئامێری PHP بە خۆکار پێناسەیان دەکات. وەکو ئێرە:
PHP
<?php
$var = 5;
$var2 = 31;
$var3 = -10; //weku wtman emesh druste
?>
بە هەمان شێوە دەتوانرێت ژمارەکان لە شێوی hexadecimal & octal notation بەکار ببرێن. ئەگەر ئەنجامەکەیانی لەبیردا بێت. بۆ hexadecimal پێشگری 0x بەکار دەبرێت و بۆ octal notation پێشگری 0 بەکار دەبرێت. لەم نموونەیەدا دەیبینن:
PHP
<?php
$var = 0xFF; // hexadecimal (255), often use for protocols
$var2 = 0763; // octal (499), often used for chmod
$var3 = 0; // normal zero, it doesn't matter if hex-, oct- or decimal
?>
ژمارەی کەرت Float
هەر بە ناوەکەیدا دەردەکەوێت کە دەربڕینە بۆ چی جۆرە ژمارەیەک. هەموو ئەو ژمارانەی کە تەواو نین و بڕن وەک 5.7, 12.25, -4.07 لە هەمان کاتدا 10.0, 3.1E-10, 4.5e3 دەگرێتەوە.
PHP
<?php
$var = 5.7;
$var2 = 3.1E-10;
$var = .1;
?>
ژمارەی کەرتی بە . دەناسرێنەوە نەوەکو فاریزە و کۆما. لەبەر ئەوەی هەمان شت وەکو گرێدانی کردە هێماکان هەمان شت بە . دەکرێت، بۆیە دەبێت تەواو وریا بیت کاتێک ژمارەیەکی کەرتیمان دەبێت لەنێو ڕیزبەندێکدا و گرێدانی تێدایە. بۆیە دەبێت بیخەینە ناو کەوانەوە بۆ دڵنیایی و گورزەکردنی بە دروستی. وەکو لێرەدا کردوومانە بە نموونەوە:
PHP
<?php
echo 'Brri Qazanc:'.77.3.'%'; // na Druste
echo 'Brri Qazanc:'.(77.3).'%'; // Druste
echo 'Brri Qazanc:'. 77.3 .'%'; // Druste, leber ewei boshaiyek peshi heye u yarmeti dedat
?>
بۆ ئەوەی بە ساکاری ئەنجامە بیرکارییەکانی ژمارەکانمان دەست بکەوێت، ئەوە لە وەشاندنی PHP6 ــەوە هەیە. کە بریتین لە +, -, *, / هەروەها لە جیاتی / ئەمە : بەکار دەبرێت. هەرچەندە لە هەموو زمانەکانی تری پڕۆگرامسازیدا / بەکار دەبرێت بۆ دابەشکردن. هەروەکو لە بنەماکانی بیرکاری بنەڕەتیدا فێربووین کە - بۆ ژمارە سالبەکانە و % ڕێژەی مانەوەی ئەنجامی دابەشکردنێک دەدات. با تەماشایەکی ئەم نموونانەی خوارەوە بکەین و یەک تۆز بگەڕێینەوە بۆ بنەڕەت:
PHP
<?php
$a = 10;
$b = 6;
echo $a-$b; // 4
echo $a+$b; // 16
echo $a*$b; // 60
echo $a/$b; // jimarei kerti float(1.66666666667)
echo -$a; // -10, heman shite legell encami echo 0-$a;
echo $a%$b; // 4 (6 yekcar cegai debetewe lr 10, brre mawekesh 4)
?>
بۆ زیاتر ئەنجامدانی کردە بیرکارییەکانمان، ئەوە هەندێک کردار و ڕێکخستنی چڕتر هەیە کە دەتوانن Math Functions بیبینن.
گرنگی کردە بیرکارییەکان
وەکو لە ژیانی ڕۆژانەماندا زۆر باوە کرداری لێکدان و دابەشکردن زۆرتر بەکار دەبرێن لە کۆکردنەوە و لێدەرکردن و ڕێژە. بۆیە هەمان شت لە زمانی PHP یش وایە. با نموونەیەک لە گرنگیدانیان ببینین:
PHP
<html>
<body>
<?php
$litr1 = 16;
$litr2 = 23;
$litr3 = 34;
$nrix = 1.35;
$KoiGishti= ($litr1 + $litr2 + $litr3) * $nrix;
echo $KoiGishti;
?>
</body>
</html>
ئەگەر تەماشا بکەین ئێمە کرداری کۆکردنەوەکانمان خستۆتە ناو کەوانەوە، تاوەکو ئەنجامەکەیان کەڕەتی نرخەکە بکات. لێرەدا کەوانەکە بۆ ئەوەیە ئەنجامی ناوەندەکەی بە یەک جار دەرپەڕێنێت. چونکە ئەگەر ئەوە نەبێت یەکەم جار لێکدانی $litr3 دەکات لەگەڵ نرخدا و دوای لەگەڵ ئەوانی تر کۆی دەکاتەوە. ئەمەش نادروستە.
pow
ئەم جۆرە کردەیە خاوەنی گرنگییەکی تایبەتە، کە ئەنجامی ڕێژەیی لێدانی x up y دەکات. ئەوانەی نوێن لەم زمانەدا، دەچن ^ بەکار دەبەن. وەکو لەم نموونەیەدا دەیبینین:
PHP
<?php
$basis = 5;
$exponent = 7;
echo $basis^$exponent; // encamekei 2 e, emesh nadruste.
echo pow($basis, $exponent); // encamekei dekate 78125.
?>
ئەگەر تەماشای ئەنجامەکان بکەین، بۆمان دەردەکەوێت pow کام ئەنجامی دروست دەدات.
جۆرە داتای boolean
لە زمانی PHP دا یەک جۆرە داتا هەیە، کە تەنها یەک bit جێگەی دەوێت بۆ پاشەکەوتکردن. وەکو دەزانین لە تەنها یەک bit دا دەتوانرێت تەنها لە بوخچەیەکدا نرخی 0 و 1 پێناسە بکرێن و بخوێنرێتەوە. لە زمانی پڕۆگرامسازیدا وەکو دەزانین true بۆ نرخی 1 دانراوە و false بۆ نرخی 0. ئەم جۆرە داتایە زیاتر بەکار دەبرێن بۆ ساغکردنەوەی وەڵامی شتێک ئایا دروستە یان نادروستە وە ئایا ڕاستە یان هەڵەیە و سنوور دانانە بۆ مەرجێک. لە زمانی PHP دا ئەم جۆرە نرخە boolean ناسراوە و دیاری کراوە، لە بەکاربردنیاندا گەورە و بچووک نووسین case-insensitive هیچ ڕۆڵێکی نییە. با تەماشایەکی ئەم نموونەیە بکەین:
PHP
<?php
$var = true;
$var2 = false;
$var3 = TRUE;
$var4 = FaLsE;
$var5 = 'true'; // eme rizbendeki 4 ye 'true', nrxi boolani true niye!!
?>
پێکهاتەکۆنتڕۆڵ (Control Structures)
لە زمانی PHP بۆ ڕێکخستنی پێکهاتەکۆنتڕۆڵ بەکاردێت، ئایا ئەو سکریپتە چالاک بێت یان نەخێر. ئایا نیشانی بدات یان نەخێر. گرنگی پێکهاتەکۆنترۆڵ لە زمانی PHP دا، بووە بە دیمەنێکی جێگیری نێو نووسینی سکریپتەکان. هەموو کات بڕیار دەدات ئەم کردەیە بکرێت یان نەکرێت و ناچالاک بێت. وە تەواو پڕاوپڕە بۆ جێبەجێکردنی ڕستەیەکی if ئەگەری لەنێوان بەڵێ و نەخێردا.
PHP
<?php
if (destewaje) xemllandin
?>
لێرەدا دەستەواژەکە دەنێردرێت بۆ خەمڵاندنێک یان هەڵبژاردنێک. ئەگەر دروست بوو؟ ئەوە دەینێرێت و لە نرخێکی true پاشەکەوتی دەکات، ئەگەر نا؟ ئەوە بە پێچەوانەوە کارەکانی دواتر نەکات false. دەبێت ئاگاداری ئەوە بیت کۆمەڵێک دەستەواژە یان ڕستەی جێبەجێکردن لەنێوان دوو کەوانەی لەم شێوەیە { } ڕێک دەخرێت.
PHP
<?php
if (destewaje) { // lerewe riste egereke bo kiradar u xemllanndinekan.
xemllandin_1;
xemllandin_2;
// emesh bo kiradreki trian.
xemllandin_n;
}
?>
دەتوانێت لەمانە زیاتر لەخۆی بگرێت بۆ ئاراستەکردنی ئەگەرەکان. کە زۆر کات بۆ گرێدانیان ئەمانە and, or, !, xor بەکار دەهێنرێت.
ئەلتەرناتیڤ و ئەنجامدانی
ڕەنگە لە زمانی PHPدا ئەوە بەس نەبێت بە تەنها یەک ئەنجام و یەک مەبەست ڕاڤە بکرێت لە ڕێگای ifــەوە بە تەنها. ئەلتەرناتیڤکردن بۆ بەرامبەرەکە زۆر گرنگە. بۆ نموونە ئەگەر ئەنجامی چوونەژوورەوەکەی دروست بوو؟
- ئەوە پەڕەی بەڕێوەبەرایەتی نیشان بدە.
ئەگەر نە؟
- ئەوە بیبەرەوە پەڕەی چوونەژوورەوە یان خشتەکەی نیشان بدە.
ئەمەش بە else دەکرێت کە ئەلتەرناتیڤ هەڵبژاردنە بۆ if.
PHP
<?php
if (login_druste) {
// perrei berrewberi nishan bide
} else {
// xishtei chunejurewei nishan bide
}
?>
لە هەمان کاتدا دەتوانرێت بە نەخێرکردنی ڕستەی if هەمان کار بکرێت. وەکو لەم نموونەیە دەیبینن:
PHP
<?php
if (login_druste) {
// Berrewberi nishan bide.
}
if (!login_druste) {
// Xishtei chunejuerewe nishan bide (!)
}
?>
تێبینی: ئەم شێوەیە ئامۆژگاری نەکراوە و زۆر جار بە هەڵەبەریتدا دەبات. لە هەندێک جاردا هەر نابێت.
elseif
بۆ پەرەپێدان و هەڵبژاردن و درێژکردنەوەی ڕستەی ئەگەری و جیاکردنەوەی ئەلتەرناتیڤەکان elseif بەکار دەبرێت، کە دەکەوێتە نێوان خشتەی if و خشتەی else ــەوە.
PHP
<?php
if (gredan) {
// eme encam bide
} elseif (gredaneki_tir) {
// eme encam bide
} else {
// dwahemin hellbjardin eme bike.
}
?>
ئەم elseif کاتێک بەکار دەخرێت، ئەگەر ڕستەی پێش خۆی if ئەنجامی false بوو. بۆیە لەم کاتەدا کۆمەڵێک elseif پێکەوە گرێ بدرێن.
PHP
<?php
if (gredan) {
// eme encam bide.
} elseif (gredani_tir) {
// eme encam bide.
} elseif (eme_gredaneki_tirish) {
// emesh encam bide.
} elseif (xemllandin) {
// PHP code!
} else {
// le dwaheminda eme encam bide!
}
?>
گرێدانەکانی یەکەم ئەگەر دروست بن ئەوە بەکار دەکەون، ئەگەر هیچ لەو گرێدانانە نەبوو؟ ئەوە خشتەی else وەگەڕ دەخرێت. ئەمەی خوارەوە نموونەیەکی تۆزێک ڕوونترە. لەم نموونەیەدا ئاستی دەرچوون یەکسانە بە 50 و لە گۆڕاوێکدا پاشەکەوت دەکرێت و هەریەک لە نمرەی ئامانج و جوتیار لە گۆڕاوێکدا پاشەکەوت دەکرێت.
PHP
<?php
$astiDercun = 50; // asti derchun 50 %.
$nCutiyar = 35; // numrei Cutiyar.
$nAmanc = 88; // numrei Amanc.
/* ########### ^^ Gorrawekan(Variable) Pashekewt kiran ########### */
if ($nCutiyar > $astiDercun) { // eger Cutiyar numrei zortr bu le 50%.
echo "Piroze,Cutiyar";
}
elseif ($nAmanc > $astiDercun) {
echo"le tosh Piroze, Amanc"; // eger Amanc numrei zortr bu le 50%.
}
elseif ($nCutiyar < $astiDercun && $nAmanc < $astiDercun){ //eger Amanc u Cutiyar numreyan kemtrbu le 50%.
echo"hiciyan Dernecun, bedaxewe";
}
else {
echo"Cutiyar u Amanc hergiz Xwendkar nebun!. pem waye Kutallfroshin"; //eme tenha nmuneye :)
}
?>
هەڵەگەری لە IF دا
هەرچەندە if () لە کردارێک دەچێت، بەڵام لە ڕاستیدا وا نییە. هەمیشە دەتنێرێت بۆ بڕگە یان بەشی دوای خۆی. لەم نموونەیە جوان ورد بەرەوە:
PHP
<?php
if (false); // <-- temashai bike ;
echo 'Foobar';
?>
هەرچەندە ئەگەرەکە FALSE بەڵام ئەو هەر echo دوای خۆی دەهێنێت. ئەگەر بە وردی تەماشا بکەین بزانین IF بۆ چی ئەگەر دەکات و دەیخاتە نێوان ئەگەربوونەوە، دەبینین ; دوای خۆی وەکو گریمان چاو لێ دەکات. با تۆزێک کۆدەکەی سەرەوە ڕوونتر بکەینەوە:
PHP
<?php
if (false)
; // <-- temashai bike ; dubare
echo 'Foobar';
?>
کردەهێمای بەراوردی ==
بۆ ئەوەی یەکسانیی دوو نرخ بکات == بەکار دەبرێت. کە ئەرکی ئەوەیە لە هەردوو لا نرخەکان بخەمڵێنێت بەرامبەر بە یەک. ئەمە دەکرێت لەنێوان دوو گۆڕاودا بێت یان لەنێوان نرخی دوو نرخی ڕاستەوخۆ. لە PHP ئەنجامەکەی لە جۆرە داتای boolean دەردەپەڕێنێت یان false یاخود true دەبێت. لەم نموونەیەدا هەوڵ بدە سەرنجەکان بخوێنەوە بە دروستی:
PHP
<?php
"sia" == "siyamend"; // encami bool(false), encamish pashekewt nakret.
$check = "sia" == $var; // eme encamekei depishknet aya FALSE yan TRUE pashekewti dekat le $check
var_dump('sia' == 'amanc'); // encamekei bool(false)
?>
تێبینی زۆر گرنگ:
=بەراورد نییە، بەڵکو ئاماژەیە. بەڵام==بەراوردی یەکسانبوونە.
بەراوردی تر
لەپاڵ == بەراوردی تر هەن. کە زۆر گرنگە بە دروستی و بە ڕێکی مانا و ئامانج و چۆنیەتیان بزانین (هەرچەندە لە بیرکاریدا دەگەڕێتەوە بۆ خوێندنگەی بنەڕەتی و سەرەتایی). ئەم بەراوردانەش لەمانە پێکهاتوون <, <=, >, >= لەم نموونەیەدا تەماشایان بکە:
PHP
<?php
$var = 5 < 7; // druste
$var = 10 <= 10; // druste
$var = 9 > 9; // na Druste!
?>
هەروەها != بۆ پشکنینی کە ئایا دوو نرخ یەکسانن یان نا.
PHP
<?php
$var = 10 != 10; // nadruste
$var = 0 != 1; // druste
?>
هەنگاوێک زیاتر بڕۆین دەبین دوو شێوەی تری بەراوردمان دێتە پێشێ. ئەوەیش درێژکراوەی == بە === هەروەها != بە !==. کە لەپاڵ بەراوردکردنی نرخدا جۆریش بەراورد دەکرێت. بە واتایەکی تر ڕیزبەند String و ژمارەی تەواویش Integer بەراورد دەکرێن بۆ نموونە:
PHP
<?php
$var = 5 == "5"; // druste
$var = 5 === "5"; // naDruste, chunke rizbend != jimarei tewa (integer)
$var = 'Max' == "Max"; // duste, hercende cutxall u taxalle rizbendekan
$var = 'Max' === "Max"; // eme Druste, chunke herdu naw rizbendeke yeksane.
?>
ئەم زانیارییانە لە کاتی کردەکانیشدا زۆر پێویستە. بۆ گەڕاندنەوەی ئەنجامێکی دروستی boolean کە هەڵە بێت false بە بەکارهێنانی == بۆ ژمارەیەکی تەواوی 0 کە هەمان ئاماژەیە وەکو false، بەڵام لە === ئەمە جودایە وەکو لەم نموونەیە ڕوونکراوەتەوە:
PHP
<?php
$var = false == 10; // false, çûnke nrxî Boolan false nakate 10!
$var = false == 0; // true, herçende yekem boolane u dwem jimareî tewaw
/* ### lewanekani pêşû basman kird FALSE dekate 0 u TRUE dekate 1 ## */
$var = false === 10; // flase, heman hokari serewe
$var = false === 0; // false, çûnke rîzbend nakate boolan
?>
چەند جارێک بەم وانانەی پێشووی بچۆرەوە، ئەگەر لە دواهەمین نموونە ئاڵۆزیت تووش بوو.
یەکسانبوون و کردەهێمای بەراورد
زۆرترین هەڵە لە کاتی داڕشتندا تووشی پڕۆگرامنووس دەبێتەوە ئەوەیە، کە لە جیاتی بەراورد دەچێت یەکسانبوون بەکار دەبات. وەکو لە پێتر ئاماژەمان بۆ کرد، فێربوونی زمانێک پێویستی بە تێگەیشتنی بنەماکان هەیە. تەماشایەکی ئەم نموونەیە بکە:
PHP
<?php
$check = $name == 'Amanc'; //le nrxi $name le rizbendi 'Amanc' depşknêt u paşekewtî dekat( Hawtabûn )
$check = $name = 'Amanc'; // Paşekewtî nrxi $name dekat le rizbendi 'Amanc' da.
?>
زۆر کات سەرلێشێواندنێک دروست دەکات لە کاتی مامەڵەکردن و دانانی ڕستەیەکی ئەگەری if دا. بەو شێوەیەی کە سەر لە پڕۆگرامۆکەکە دەشێوێت ئایا بەراورد (هاوتابوون) بکات بۆ نرخەکە یان یەکسانبوون. ئەمەش وا دەکات نرخ و فرمان وەڵامەکان لە دوای خۆی بە نادروستی بداتەوە. ژیرانەترین ڕێگا ئەوەیە کە چۆن بەرگە لەم بەراورد و یەکسانبوونە بگریت و بۆ پڕۆگرامۆکەکە ڕوونی بکەیتەوە کە چیت مەبەستە.
PHP
<?php
"Amanc" == $name;
?>
لێرەدا تەواو ڕوونکراوەتەوە کە مەبەست لە ڕیزبەندی Amanc تەنها بەراوردە لەگەڵ $name وە یەکسانبوون نییە. بەم شێوەش ئەو دوودڵییە بەربەست دەکەیت. وە لە ئەگەری بەرامبەردا کە یەکسانبوونە هیچ بوونی نییە و ناشبێت، چونکە ناکرێت ڕیزبەندێک یەکسانبوونی نرخێکی گۆڕاوێک بێت و هەڵەیە.
PHP
<?php
$check = "Amanc" == $name; // eîpşknêt le $check [true/false] paşekewtî dekat
$check = $name = "Amanc"; // eme serçaweî hellek niye!!
$check = "Amanc" = $name; // Yeksanbûn le rizbendêkda nakrêt HELLEYE!!
?>
گرێدانی لۆجیکی (Logical Operators)
مەبەست زۆرتر لە گرێدانی مەرجە جیاوازەکانە لە پڕۆگرامۆکەیەکدا. بۆ نموونە گرێدانی دوو نرخ و بڕگەی پێشتر لە جۆرە داتایەکی Boolean دا و لە ئەنجامی ئەواندا ئەنجامێک یان داخوازییەکی نوێ دەرپەڕێنیت. لە بواری تیۆریدا بۆ دوو نرخی گۆڕاو ١٦ جۆرە کردار هەیە کە بۆ true یان false دەگەڕێندرێنەوە و وابەستەن. لە کاری ڕۆژانەماندا تەنها ٧ لەو کردار/گرێدانە دەکرێن و ئەمانیش دەگەڕێنەوە بۆ ٣ دانەی سەرەکی و ٤ی نیمچە هاوپێچ. زمانی PHP تەنها چوار لەو جۆرە گرێدان/کردارانە بەکار دەبات وەکو بنەچە. هەرچی ئەوانەی ترە بە دەستکرد لێرە و لەوی بەکار دەبرێن.
گرێدان بە AND ـەوە
ئەم جۆرە گرێدانە لە هەموویان لۆجیکی ترە، کاتێک نرخێک ئەنجامی true دەدات ئەگەر هەڵبژاردنەکان true بوون. بۆ نموونە ئارا کاتێک دیاریی من وەردەگرێت، ئەگەر لە تاقیکردنەوەی کۆتایی ساڵ سەرکەوتوو بوو، هەروەها دڵی جوانێک بپێکێت. ئەگەر لەو دوو مەرجە یەکێکیان نەبوو، هەمان شت دیارییەکەی منیش فت :). ئێستا با ئەم نموونەیە بکەین بە کۆدێکی ڕوونتر:
PHP
<?php
$var = false and false; // encami dekate false
$var = false and true; // encami dekate false
$var = true and false; // encami dekate false
$var = true and true; // encami dekate true
$diyari = $derchun_leexmun and $pekani_cwanek;
?>
| Argument 1 (A) | Argument 2 (B) | Result (Q) |
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
لە هەمان کاتدا & هەر هەمان مانایە.
گرێدان بە ORــەوە
لەم شێوە گرێدانەوە وەکو لایەنی زمانەوانی کە بە مانای «یاخود» / «یان»ی کوردی دێت. بۆ نموونە ئارا دەتوانێت لەگەڵ جوانەکەدا ئاشتبێتەوە، ئەگەر دەستەگوڵێکی بۆ بنێرێت بە دیاری یاخود بە دەمی داوای لێبوردنی لێ بکات. بە واتایەکی تر لایەنی بەرامبەر بە یەکێک لەو دوو ئەگەرە ڕازییە. ئەگەر هەرکامیان بێت ئامادەیە وەکو جاران ببێتەوە لەگەڵ ئارادا. ئەگەر ئارا هەردووکیان بکات ئەوا هەمان شت. لێرەدا مانای یاخود OR بۆ دەردەکەوێت کە بە شێوەیەک لە شێوەکان لەگەڵ AND دا هاوتەریب نییە.
PHP
<?php
$var = false or false; // encami dekate false
$var = false or true; // encami dekate true
$var = true or false; // encami dekate true
$var = true or true; // encami dekate true
$Ashtbunewe = $chepke_gull or $qsekirdin_pekewe;
?>
وەکو لیستەکەی سەرەوە دەتوانین ئەم تێڕوانینە بخەینە خشتەکەوە ئەمجارە:
| Argument 1 (A) | Argument 2 (B) | Result (Q) |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
گرێدان بە NOTــەوە
لەم شێوە گرێدانەدا تەنها یەک نرخی جۆرە داتای دەوێت نەوەکو وەکو ئەو دوانەی پێشووتر دوو نرخ. لێرەدا دەبێت جوان ورد بینەوە کە بریتییە لە ڕەتکردنەوەی هەمان گرێدراوی دوای خۆی. یان باشترە بڵێین کاتێک TRUE بوو دەبێتە FALSE و بە پێچەوانەشەوە هەر دروستە != کە بەشەکانی پێشوودا باسمان کرد. ئێستا ئەگەر نموونەیەک وەربگرین بۆ زۆرتر تێگەیشتن:
PHP
<?php
$wishe = !$jimare;
?>
لێرەدا مەبەستمان ئەوەیە کە وشە یەکسان نییە یان بریتی نییە لە ژمارە.
با نموونەیەکی پێشکەوتووتر تەماشا بکەین:
PHP
<?php
$var = $x != $y; // legell !=
$var = !($x == $y); // legell !(==) gringe kewaneke.
?>
لێرەدا نرخەکان بۆ سێیەم دەرەنجام ناگەڕێنەوە.
| Argument 1 (A) | Result (Q) |
| 0 | 1 |
| 1 | 0 |
گرێدان بە NAND
لەپاڵ ئەو سێ شێوازی گرێدانەدا، شێوەگرێدانی NAND هەیە کە گرێدانێکی وردترە یان پێشکەوتووترە. کە لە هەردوو شێوەگرێدانی NOT و AND پێکهاتووە. لە زمانی PHP دا دەتوانرێت لەپاڵیاندا ئەم شێوە گرێدانەش بەکار ببرێت. با تەماشایەکی ئەم نموونەیەی خوارەوە بکەین:
PHP
<?php
$check = !($var1 and $var); // AND -> NOT = NAND
$check = !$var1 and $var; /* Lêreda NAND niye, yekemcar $var1 berperç dedrêtewe paşan bo AND derrwat */
?>
لێرەدا بۆمان دەردەکەوێت ئەرکی بەپەرچدانەوەی ڕاستییەکە کە لە شێوەگرێدانی AND بۆمان ڕوون بۆتەوە، بۆیە زیاتر ڕوونکردنەوەی ئەم کرداری گرێدان و پاشان بەرپەرچدانەوەی گرێدانێک لە گرێدانێکدا لەم خشتەیەوە زیاتر ڕوونتر دەبێتەوە:
| Argument 1 (A) | Argument 2 (B) | Result (Q) |
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
ئەگەر سەرنجی یەکەم بڕگە و کۆتاییەمین بڕگە بدەیت، بۆ دەردەکەوێت کە کرۆکی ئەم بەپەرچدانەوەی گرێدانە چۆن لە کردارێکی وادا دەردەکەوێت.
گرێدان بە NOR
لێرەدا نزیکەیی هەمان پێناسەی سەرەوەیە، واتا شێوەگرێدانی پێشکەوتووە لە شێوەگرێدانی OR و NOT دا. و بەم شێوەیەش ئەمجارە هەمان بەستن لێکتێگەیشتن نییە، بەڵکو وەگەڕخەری PHP وەکو ناسین بە تەنها نایناسێت بەڵکو ئەنجامی بە شێوەگرێدانی OR و بەرپەرچدانەوەیەتی بە ! کە لەم نموونەیەی خوارەوەدا دەیبینین:
PHP
<?php
$check = !($var1 or $var); // OR -> NOT = NOR
$check = !$var1 or $var; /* Lêreda NOR niye, çûnke yekemcar berprçî $var1 dedrêtewe, paşan denêrdrêt bo OR u $var */
?>
ئێستا با تەماشا بکەین بە شێوەیەکی لۆجیکی و بیخەینە خشتەوە وەکو نموونەکانی سەرەوە:
| Argument 1 (A) | Argument 2 (B) | Result (Q) |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 0 |
گرێدان بە XOR
شێوەیەکی تری گرێدانی پێشکەوتووە کە سەرچاوەی لە OR گرتووە بەڵام لەمەیاندا تەنها یەک TRUE قبووڵ دەکات. بە واتایەکی تر ئەگەر هەردوو نرخەکە TRUE بوون ئەنجامەکەی FALSE دەردەپەڕێنێت. تەماشایەکی ئەم نموونەیە بکە:
PHP
<?php
$check = ($var1 and !$var2) or (!$var1 and $var2);
?>
لەبەر ئەوەی کەس لە زمانی PHP لەم شێوە گرێدانە تێکەڵی یەکتری ناکات، بۆیە شێوەگرێدانی XOR مان هەیە و X بە مانای exclusive دێت.
PHP
<?php
$check = false xor false; // false
$check = true xor false; // true
$check = false xor true; // true
$check = true xor true; // false
$regezi_drust= $ya_nere xor $ya_meye;
?>
گرێدان بە XNOR
وەکو پێناسەیەکی دروست و ڕوون دەتوانین بڵێین کە XNOR بریتییە لە ڕەتکردنەوەی یان (بە نەخێرکردنی) گرێدانی XOR ــە کە پێشتر ئاماژەمان پێداوە. بۆ ئەوەی لە لۆجیکی گرێدانەکە تێبگەین دەیخەینە نێو خشتەوە وەکو ئێرە:
| Argument 1 (A) | Argument 2 (B) | Result (Q) |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
ئەمەش نموونەیەک بە کۆدی PHP:
PHP
<?php
$check = true and $var; /* is the same as: */ $check = $var; // the true is useless
$check = false and $var; /* is the same as: */ $check = false; // it is always false
$check = true or $var; /* is the same as: */ $check = true; // it is always true
$check = false or $var; /* is the same as: */ $check = $var; // the false is useless
?>
ئەگەر جوان و بە وردی تەماشایەکی هۆکار و ڕەتکردنەوەکان بکەین دەبینین لە دوو جار ڕەتکردنەوە یان نەخێرکردن دێت. وەکو ئەم نموونەیە:
PHP
<?php
$check = !(!$check); // like 'minus times minus'
?>
لێرەدا زۆر گرنگە یاساکانی دیمۆرگان تێبگەین لە کاتی بەستنەوە بە AND و OR. با نموونەیەک تەماشا بکەین:
PHP
<?php
$check = !$var1 and !$var2;
$check = !($var1 or $var2); // Her heman şite
$check = !($var1 and $var2);
$check = !$var1 or !$var2; // Her heman şite
?>
زیاتر ئەگەر بگەڕێینەوە بۆ سەردەمی منداڵی، دەبینین هەندێک فرمانمان وەرگرتووە لە خانەوادەکانمانەوە. تەواو گونجاوە وەکو نموونەیەک بۆ ئەم کارە و تێگەیشتن لە گرنگی ئەگەر ئەوە نەبوو، دەنا ئەوە. لە زمانی ئەوانەوە:
- ئەگەر لە خوێندنی ئەمساڵ دەرچوویت! پاسکیلت بۆ دەکڕین….
- ئەگەر نا. هیچت بۆ ناکڕین…
ئەمە وەکو ڕووکەش و تێگەیشتنێکی بنەڕەتی لەم کردارە لە PHP دا. ئەگەر بگەڕێینەوە بۆ پێشتر باسی if-elseــمان کردووە. کە لە تایبەتمەندی و توانای کاردا جودان بەڵام هاوکارن. لە switch جیاوازی ئەوەیە ڕاستەوخۆ بۆ هەموو ئەگەرێکی نەبوون و بوون case:، فرمانێک بانگ دەکەیت بۆ کارکردن. یان دروسترە بڵێین کارێک دەکەین بە فرمانێک کە تەنها تایبەتە بەو، لە کۆتایی بڕگەکەدا break;. لە نەبوونی هیچیاندا default: بەکار دەبرێت. تەماشای ئەم نموونەیە بکە بە وردی:
PHP
<?php
$var = 4;
switch ($var) {
case 0:
echo "mn hîç kara nabm ";
break;
case 4:
echo "mn cyawazm we çalakm (:";
break;
case 90:
echo "mnîş hîç rollêkm nîye u naçalakm";
break; // kotayîhênan beegereke
default:
echo "hîç lewaney serewe nebûn";
break;
}
?>
ئەوانەی ئاشنان بە هەندێک پرۆگرامۆکەی بەڕێوەبردن وەکو Drupal یان WordPress ئاشنان بەم جۆرە ڕستە ئەگەرییانە لەنێو HTML دا. با نموونەیەکی گشتی و ئاسان وەربگرین بۆ تێگەیشتن لە کرۆکی کردارەکە. کە زیاتر if-else ـــە بەڵام لە ڕواڵەتێکی تردا.
PHP
<html>
<body>
<?php
$nrx = 1.12;
if ($nrx < 1):
?>
Nrxeke le 1 dinar kemtre<br />
berasti Herzaniye :-D
<?php else: ?>
Nrxeke zortire le 1 dinar<br />
em graniye chiye ei Hawar :(
<?php endif; ?>
</body>
</html>
کورتکردنەوەی کردارەکان
یەکێکە لەو هەنگاو و کردانەی کە لە زۆرترین جاردا دێتە بەردەممان. بۆیە وەکو هەموو زمانە زیندووەکان لە PHP هەمان شت هەیە و بەکار دەبرێت.
Assignment operator
سوودی لەوەدایە بۆ ئەوەی نرخی گۆڕاوێک بگۆڕیت زۆر جار پێویست ناکات گۆڕاوێکی نوێ بنووسیتەوە، بەڵکو تەنها نرخەکەی دادەگریت و بەرزی دەکەیتەوە و بەم شێوەیەش کاتێکی و ڕوونترین کۆدت دەست دەکەوێت.
PHP
<?php
$var = 5;
$var = $var + 10;
$var += 10;
?>
بە وردی تەماشا بکەین، دەزانین کردەکە بە سانایی چۆنە بەبێ ئاڵۆزکردن. هەمان شت لە PHP دا دەبێت وریای چۆنیەتی بەکاربردنی بین، نەبا هەڵەچنی دروست بکات. بۆ نموونە:
PHP
<?php
$var = 5;
$var += 10; // druste
$var + = 10; // Helle, parse error!!
?>
زۆر بە وردی تەماشای بۆشایی و نێوان هێمای یەکسان و زۆرکردنەکە بکە. ئەم کورتکردنەوانە لەگەڵ هەموو کردارە بیرکارییەکانی ژێر PHP دەگونجێن. بۆ نموونە / یان % دابەشکردن و ڕێژەی سەدی. بەڵام دەبێت وریا بین لە دابەشکردندا، کە بەسەر سفردا دابەش نەبێت.
PHP
<?php
$var = 20;
$var +=4; // $var == 24
$var *=4; // $var == 96
$var -=4; // $var == 92
$var /=4; // $var == 23
$var %=4; // $var == 3 (23/4 = 5 Rest 3)
?>
هەروەکو لە نموونەی درێژکردنەوەی .= ڕیزبەندا باسمان کرد، دەتوانرێت لەوێش بەکار ببرێن.
PHP
<?php
$naw = 'ara';
$rizbend = "sillaw ". $naw ." \n";
$rizbend .= "ema katet bash,\n";
$rizbend .= "hiwam waye, \n";
$rizbend .= "her serfraz u serkewtu bit";
?>
In-/decrement
لە کاتی بەرنامەسازیدا زۆر جار پێویستمان بەوەیە هەمان نرخ بۆ گۆڕاوێک یەکجار بەرز بکەینەوە یان کەم بکەینەوە. ئیتر ئەمە لە دۆخێکەوە بۆ دۆخێکی تر دەگۆڕێت، بەڵام بەگشتی گرنگە بزانرێت کە ئەم کردە ++ بەردەوامە چۆنە؟ کە زۆرتر و باوتر لە کاتی For-Loop بەرچاومان دەکەوێت و زۆر بەکار دەبرێت.
PHP
<?php
$nrx = 20;
$nrx++; // berzkirdnewe +1
echo $nrx; // encamekei dekate 21
?>
هەمان شت بۆ کەمکردنەوەش --:
PHP
<?php
$nrx = 20;
$nrx--; // dagrtin -1
echo $nrx; // encamekei dekate 19
?>
تێبینی: ئەم کردەیە بۆ کەڕەت کردن
**هیچ کات نابێت و هیچ مانایەکی بیرکاری ناداتە دەستەوە.
لەم نموونەیەدا دەتوانین ببینین چەند ڕێگایەک بۆ کورتکردنەوە بۆ لێدەرکردن هەیە وەکو یەک لایەن، کە بەپێی شارەزایی و تێڕوانیتان بۆ زمانەکە دەزانن کامەیان کورتترە وە پراکتیکی ترە؟ وە ئایا لە کوێدا و لە چی ساتێکدا بەکار ببرێت؟:
PHP
<?php
$var = 20; // Eme nrxi $var bo yek Gorraw
$var = $var - 1; // wata bu be 19
$var -= 1; //esta bu be 18
$var--; //esta bu be 17
echo $var;
?>
لووپ کردن (Loop)
یەکێک لە هەرە سیفەتەکانی PHP وەکو زمانێکی بزۆک، خستنەکاری فرمانێکە دووبارە کردنەوەی تا ئەو کاتەی دۆخەکە یان فرمانەکە ئەرکەکەی تەواو دەبێت. ئەم کردارەش بە لووپ کردن ناسراوە، جۆرەکانی لە زمانی PHP دەکاتە چوار جۆری تا ئەندازەیەک لەیەک چوو لە ڕوودا بەڵام جودا لە کردەوە و شوێندا. ئێمە لێرەدا هەوڵ دەدەین لە دوای یەک باسیان بکەین.
For
ئەم جۆرە لووپ کردنە لە هەرە باوترین جۆرەکانیەتی، وە پێکهاتووە لە دوو بڕگە:
- سەر: کە بریتییە لە خاڵی دەستپێک، پاشان مەرجی کار، ئاست یان چوارچێوەی سنووردار بۆ ئەو کردەیە.
- پێ: کە کردەکانی تێدا ئەنجام دەدرێت یان خۆیان دووبارە دەکەنەوە. ئەمە نموونەی توخمی ئەم جۆرەیە:
PHP
<?php
for (Despek; Merc(ekan); Snwr u Chwarchewe) {
/* lered krde yan krdekan denusren
kredeyki tr...
krdei ... */
}
?>
با نموونەیەک وەربگرین، کە دەبینین چۆن یەکەم جار لە خاڵی دەستپێکەوە دەیگرێت و دوای مەرجی کردارەکە دەخوێنێتەوە لە کۆتاییدا بڕیار دەدات چەند جار و چۆن خۆیان دووبارە بکەنەوە تاوەکو چی سنوورێک.
تێبینیی گرنگ: زۆر وریابە کە فرمانەکە سنووردار بێت، چونکە ئەگەر لووپێکی بێسنوور بێت دەکاتە هۆی ڕاگرتنی ڕاژەخوازەکە.
با نموونەیەک وەکو دەستپێک بنووسین:
PHP
<html>
<body>
<?php
for ($i=1; $i<=5; $i++)
{
echo "Riz $i <p>";
}
?>
</body>
</html>
تەماشای بکە کە خاڵی دەستپێک دەکاتە ژمارە 1 پاشان نرخەکە بچووک و یەکسان بێت بە 5 وەکو مەرج. لە کۆتاییدا جۆری کردەکە بە دووبارەکردنەوەی کردارەکەیە هەموو جار بە زۆرکردنی +1 یان وەکو فێربووین گۆڕاوەکە و ++. هەروەها دەتوانرێت لەناو یەکدا لە یەکتری تێبئاخرێن وەکو ئەم نموونەیە:
PHP
<?php
for ($z=1; $z<=5; $z=$z+1)
{
for ($s=1; $s<=3; $s=$s+1)
{
echo "Besh$z/Parche$s ";
}
echo "<p>";
}
?>
لووپکردنی for لەنێو خشتەدا
وەکو باوە بۆ دروستکردنی خشتە و دانەوەی پەڕە لە دوای کردەکان، زۆر جار دانەوەی لە خشتەیەکی HTMLـــدا دەکرێت. با تەماشایەکی ئەم نموونەیە بکەین بۆ زیاتر ڕوونکردنەوەی کارەکە:
PHP
<html>
<body>
<table border="1">
<?php
for ($i=8; $i<=15; $i++)
{
echo "<tr><td>Riz</td><td align='right'>$i</td></tr>";
}
?>
</table>
</body>
</html>
While
ئەمەیان لە زۆر ڕووەوە هەر لە FOR دەچێت بەڵام لە چەند خاڵێکدا لەیەک جیاوازن کە بە خوێندنەوە و نموونەی زیاتر تێیان دەگەین. وەکو پێناسەیەکی گشتی ئەم جۆرە لووپکردنە لە سەرەوە دەست پێ دەکات کە تەنها یەک کردە/فرمان لەخۆ دەگرێت. بە دوایدا پشکنینی سەر دێت، ئەگەر کاتێک نرخە وەڵامی TRUE دای بە دەستەوە ئەوە بەردەوام دەبێت تاوەکو دەگاتە FALSE ئیتر ئەم جۆرە لووپکردنەوە دەوەستێت و باز دەدات بۆ خشتەی دوای خۆی. جیاوازییەکی بەرچاوی لەگەڵ FOR ــدا ئەوەیە، ئەم لووپکردنە کاتێک دەکرێت کە ژمارە کردەکان پێشتر نەزانرابێت، هەرچی FOR لە بڕگەی دووەمدا ئاستی خۆدووبارەکردنەوە دیاری دەکرێت. با بێن تەماشای توخمی WHILE بکەین کە چەندە لەگەڵ ئەوەی پێشی جیاوازە؟
PHP
<?php
while (AyawanekanitXwendewe()) {
Debianxwenewe();
}
?>
ئێستا ئەگەر تەماشایەکی ئەم نموونەیە بکەین، تێدەگەین کە چۆن یەک بڕ لە سەرەوەدا دەنووسرێت.
PHP
<?php
$jmeriyar=0;
while($jmeriyar<10) { // eme nmunei tegeshtine
echo "$jmeriyar, ";
$jmeriyar++;
}
?>
DO-While
ئەم دەتوانین بڵێین لەیەکچوونێکی تەواوی لەگەڵ while هەیە، بەڵام ئەمەیان لە پێوە بەڕێوە دەبرێت یان کار دەکات. جیاوازی کارکردن یان بەڕێوەبردن لە پێوە ئەوە دەگەیەنێت کە ئەو کردەیەی لە دوای do دێت هیچ نابێت جارێک ئەنجام دەدرێت وە پاشان دەچێت بۆ while بزانێت چی ئەداتەوە. ئەگەر FALSE بوو ئەوە ئەم ئاڵقەیە کۆتایی دێت و بە پێچەوانەشەوە خۆی دووبارە دەکاتەوە تاوەکو دەگاتەوە FALSE. سەرەتا با توخمی ئەم شێوە ئاڵقەیە وەربگرین:
PHP
<?php
do {
connect();
$data = getSomeData();
disconnect();
} while ($data > 40);
?>
وەکو دەبینین دەبێت کۆتایی while هەمیشە بە ; کۆتایی بێت. ئەمەش نموونەیەکی تری لەو جۆرە:
PHP
<?php
$bjmer=0;
do {
echo "$bjmer, ";
$bjmer++;
} while($bjmer<10);
?>
foreach
ئەم جۆرە زۆر تایبەتە بە ڕیزەکان Array وە زۆر گونجاو و ڕێکە لەگەڵیاندا. ئەم جۆرە ئاڵقیە بە کلیلەوشەی foreach دەست پێ دەکات و بە دوای خۆیدا کەماوەیەکی چەماوەی لەنێوانیاندا کە تیایدا گۆڕاوەکانی ڕیزەکان Array لەخۆ دەگرێت. لە پاشدا کلیلەوشەی as دێت لە گۆڕاوێکی نوێدا. با نموونەی توخمێکی foreach وەربگرین:
PHP
<?php
$a = array("foo", "bar", "bla");
foreach ($a as $value) {
echo $value."\n";
}
// outputs the value of the array
?>
ئەگەر پێویستت بە نرخی ناوی گۆڕاوەکە بوو، ئەوە تەنها پێویستت بەوەیە $var => تێبخەیت بۆ دانەوەی.
PHP
<?php
$user = array('Naw' => "Ara Bextiyar",
'Temen' => 22,
'Shwen' => 'Kurdistan',
10 => 100);
foreach ($user as $k => $v) {
echo "Nawki Array '".$k."' pekhatwe le nrxi '".$v."'\n";
}
?>
ئەمە بەجێ دەهێڵین تا وانەی داهاتوو زیاتر دەچینە ناو باسی ڕیزەکان Arrays. وە نموونەی زیاتر دەربارەیان وەردەگرین دەربارەی شێوەکانیان.
ڕیزەکان (Arrays)
لە هەرە خەسڵەتە گرنگەکانی زمانە بزۆکەکانە و لە زمانی PHP دا گرنگییەکی تایبەتی هەیە، وە یەکێکە لە کۆڵەکەکانی داڕشتن بەم زمانە. ڕیزەکان لە زمانی PHP ــدا بە کلیلەوشەی Array دەست پێ دەکات لەنێو کەوانەدا نرخەکان و بە فایزە لە یەکتریان جودا دەکرێتەوە وەکو پارامێتەر. ئەگەر توخمێکی Array وەربگرین جوانتر لامان ڕوون دەبێتەوە:
PHP
<?php
$arr = array("foo", "bar", "bla", 5.6, false, -10, "foo", "foo", "bar", "foo");
?>
ئەم ڕیزە پێکهاتووە لە ١٠ ئەلیمێنت و کلیلەکان یان ئیندێکسەکان بە شێوەیەکی خۆکار لە 0 ــەوە دەست پێ دەکات و بەرەو سەرەوە. ئێستا ئەگەر بێین ئەم ڕیزە بپشکنین لە ڕێگای var_dump ئەوە دەرەنجامەکەی دەکاتە ئەمەی خوارەوە:
Plaintext
array(10) {
[0]=>
string(3) "foo"
[1]=>
string(3) "bar"
[2]=>
string(3) "bla"
[3]=>
float(5.6)
[4]=>
bool(false)
[5]=>
int(-10)
[6]=>
string(3) "foo"
[7]=>
string(3) "foo"
[8]=>
string(3) "bar"
[9]=>
string(3) "foo"
}
ئەگەر بمانەوێت لەناو نرخەکاندا بە نرخێکی تایبەتەوە بوەستین و وە بەکاری بهێنین، ئەوە کەوانەی لێوارتیژ بەکار دەبەین. بۆ نموونە لێرەدا:
PHP
<?php
$arr = array("foo", "bar", "bla", 5.6, false, -10, "foo", "foo", "bar", "foo");
echo $arr[0]; // derencam foo
echo $arr[3]; // derencam 5.6
echo $arr[4]; // derncam hich nakat, chunke nrxi bool FALSE rizbend betall dekat
var_dump($arr[4]); // derncami bool FALSE, katek ke pshkinini bo bikein.
?>
بە هەمان شێوەی گۆڕاوەکان دەتوانین نرخی ڕیزێک بگۆڕین بە پێناسەکردنی لە نوێیەکدا وەکو لەم نموونەیە دەیبینین:
PHP
<?php
$arr = array("Ara", "Jon Travolta", "Cutiyar");
$arr[1] = "Esterei Sinemaye";
echo $arr[1]."\n";
?>
لێرەدا سێ ناومان هەیە بۆ پێناسەی ڕیزێک، دووەم ناویان کە دەکاتە شوێنی ژمارە [1] بۆ ڕیزەکان چونکە یەکەم دانە بە خۆکار [0] وەردەگرێت وەکو باسمان کرد. ئەم کردارە واتا گۆڕینی نرخی ئیندێکسێک لە نرخێکی نوێدا و بەم شێوەیە لەمەودوا نرخە نوێکە هەژمار دەکرێت. زۆر کات دەتوانیت Array بەتاڵ بنووسیتەوە و لە پاشدا نرخەکان بۆ هەر ئیندێکسێک دیاری بکەیت و جێگیری بکەیت. بەم شێوەیە:
PHP
<?php
$arr = array();
$arr[5] = "Nrxeki Nwe";
$arr[7] = "Nrxeki tr";
var_dump($arr);
?>
ئەنجامی پشکنینی var_dump ئەمە دەکات:
Plaintext
array(2)
{
[5]=>
string(10) "Nrxeki Nwe"
[7]=>
string(9) "Nrxeki tr"
}
لەناو ڕیزەکاندا دەتوانرێت ئیندێکسەکان بۆ نرخەکان هەمان شت بنووسرێتەوە، کە بەهۆی هێمای گەورەتر و یەکسانەوە => دەکرێن، پێش ئەو هێمایانەش ژمارەی ئیندێکسەکە دەنووسرێت. وەکو لەم نموونەیەدا دەیبینین:
PHP
<?php
$bar = array(3 => "Ho", "Ha"); // dwem nrx jimare 4
var_dump($bar);
echo '<br />';
$foo = array(-7 => "amanj", "ara"); // dwem dane index jimare 0 werdegret , chunke peshekei jimarei salibe -10
var_dump($foo);
echo '<br />';
$var = array("Willat" => "Kurdistan", "Ubuntu"); // dwem dane index jimare 0 werdegret, chunke Rizbennde yekm!
var_dump($var);
echo '<br />';
?>
با دیقەتی پشکنینی var_dump بدەین:
Plaintext
array(2) {
[3]=>
string(2) "Ho"
[4]=>
string(2) "Ha"
}
array(2) {
[-7]=>
string(5) "amanj"
[0]=>
string(3) "ara"
}
array(2) {
["Willat"]=>
string(9) "Kurdistan"
[0]=>
string(6) "Ubuntu"
}
associative arrays
ئەمە ئەو ڕیزانە دەگەیەنێت کە ئیندێکسەکەیان پێکهاتبێت لە ڕیزبەند string. تەماشایەکی ئەم نموونەیە دەکەین کە لە کۆتاییدا پشکنینی بۆ کراوە لە ڕێگای var_dump ــەوە.
PHP
<?php
$riz = array();
$riz['naw'] = 'Amanj Ebdulrehman';
$riz['temen'] = 24;
$riz['shwen'] = 'Cemcemall';
$riz['pishe'] = 'FormatWindows'; //wata westai Formate ;)
echo 'Min nawim '.$riz['naw'].'e, temenim '.$riz['temen'].' salle u le shari '.$riz['shwen'].' nishtecem, xaweni dukani '.$riz['pishe']." m .\n";
echo '<br />';
var_dump($riz);
?>
numeric arrays
ئەمە ئەو ڕیزانەی تر دەگەیەنێت کە لە ناو هاوپۆلی سەرەوەدا نین وە بەگشتی بە Array وەکو بارە ئاساییەکەی ناسراون وەکو پێناسی پڕواپڕ بۆی.
PHP
<?php
// nmuneyeki bnereti Array Rizekan!
$Rizekan = array('A', 'B', 'C', 'D'); ;
?>
سڕینەوەی ڕیزەکان (Remove Array)
بۆ ئەوەی نرخی ڕیزەکان بسڕینەوە دەتوانین unset بەکار بەرین.
PHP
<?php
// listi nuserani Wiki Chawg.org
$riz = array();
$riz[] = "Ara";
$riz[] = "Amanj";
$riz[] = "James Bond";
$riz[] = "Hawkar";
$riz[] = "Cwtiyar";
unset ($riz[2]); // srinewei James Bond, chunke ewe nuseri wiki niye ;)
var_dump($riz);
?>
چاو لە ئەنجامی پشکنینەکە بکە بۆ زانینی ڕووداوەکان.
نەگۆڕەکان (Constants)
هەروەکو گۆڕاوەکان وەکو شێوەیەکی گشتی و بە define دەست پێ دەکات، بەڵام ئەمانە ناتوانرێت بگۆڕێت و دەستکارییان بکرێت، هەروەها ناتوانن هەموو جۆرە نرخێک یان ئامانجێک وەربگرن وەکو گۆڕاوەکان، بەڵکو جۆرە نرخی scalar وەردەگرن لەگەڵ جۆرە داتای NULL. واتا هەمان یاسای چۆنیەتی نووسینی گۆڕاوەکان بەسەر ئەمانیشدا دەڕوات بەڵام ئەمان بە $ دەست پێ ناکەن وە زۆریش باوە کە پیتی گەورە (uppercase) بەکار ببرێت بۆ نووسینەوەیان. هەروەها بە پێچەوانەی گۆڕاوەکانەوە ئەمان دەتوانن لە هەموو سکریپتەکەدا بەکار ببرێت. ئەمە یەکێکە لە خاڵە بەهێزەکانی کە زۆر کات بۆ دیاریکردنی هەڵبژاردنەکان بەکار دەبرێن بۆ نموونە پەڕەی config یان هەڵەگری error_reporting.
توخمی نەگۆڕەکان
وەکو لە سەرەوەدا باسی پێویستی دەستپێکردنی بە define مان کرد، هەمان کات یەکەم نرخ دەکاتە ناوی نەگۆڕەکە ــکە خۆی دووەم دانە دەکاتە نرخی ئەو نەگۆڕە. ئەگەر نموونەی توخمێکی ئاسایی وەربگرین وەکو ئەمە:
PHP
<?php
define('MALPPERRI_BASH', 'chawg.org Wiki and forum');
?>
با نموونەکەی سەرەوە جارێکی تر تێهەڵکێشی نموونەیەکی تر بکەین لەسەر ئەو هەموو پێناسە و چۆنیەتییەی باسمان کردووە:
PHP
<?php
define('MALPPERRI_BASH', 'chawg.org Wiki and forum');
echo MALPPERRI_BASH;
// yan be shewei newan String 'rizbend'!
echo 'Fermu legell perrekani '.MALPPERRI_BASH.'!';
echo 'Fermu legell perrekani MALPPERRI_BASH'; // em sheweye Helleye, tenha weku deq!
?>
ئەگەر بێین نموونەیەکی پەڕەی wp-config.php پڕۆگرامۆکەی بەناوبانگی WordPress وەربگرین، تەماشای دەکەین تا چی ئەندازەیەک گرنگە بەکارهێنانی لە هەموو سکریپتەکەدا یەکجار بۆ پەیوەندی بەستن لەگەڵ بنکەی دراوەدا جێگیر دەبێت. ئەمەش لە ڕووی خێرا ڕاپەڕاندن و ڕوونی لە کۆدەکاندا هەنگاوێکی سەرکەوتووە بۆ نووسینی سکریپتەکان.
PHP
/** nawî bnkey drawe (The name of the database for WordPress) */
define('DB_NAME', 'nawiDB');
/** bekarhênerî bnkey drawe (MySQL database username) */
define('DB_USER', 'nawibekarheneriDB');
/** têperrewşey bnkey drawe (MySQL database password) */
define('DB_PASSWORD', 'teperrewisheiDB');
/** MySQL hostname */
define('DB_HOST', 'localhost');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');
دەستەواژەی include
کاری تێخستنی ناوەڕۆکی پەڕگەیەکی تر دەکات بۆ ئەو پەڕگەی کە تیایدا دەنووسرێت. یەکێک لە هەرە کردارە گرنگەکانی بواری داڕشتنە، هەروەها یەکێکە لە گرنگترین کورتکردنەوەی ڕێگاکان بۆ نووسینی پڕۆگرامۆکەکان. گرنگییەکی تایبەتی خۆی هەیە لە پارچەپارچەکردنی بەشەکان و دیاریکردنی بەشەکان بۆ بەکارهێنانیان لە هەموو پڕۆگرامۆکەکەدا. ئەمەش بەو واتایەی ڕوونکردنەوەیەکی زیاتر دەدات بە کۆدەکان لەنێو خودی پڕۆگرامۆکەکاندا.
چۆنیەتی بەکارهێنانی INCLUDE
چۆنیەتی بەکارهێنانی include زۆر سادەیە وەکو بەکارهێنان بەڵام وەکو ئامێری جێبەجێکردنی ئەم کردارە، پڕۆگرامنووس پێویستی بە تێگەیشتنی لۆجیکی بەکاربردنی هەیە وە ئایا چۆن کار دەکات؟ بە کورتی ئەتوانین بڵێین لە سێ هەنگاودا ڕوونی بکەینەوە:
- کۆتاییهێنان بە مۆدوسی PHP یەکە واتا
?>. - هێنانی ئەو کۆدە یان ئەوەی کە دەویسترێت بهێنرێت.
- دیسانەوە دەستپێکردنەوەی مۆدوسی PHP واتا
<?php.
بۆ تێگەیشتنێکی تەواو لەم کارە نموونەیەکی تێهەڵکێشکردن وەردەگرین. کە نموونەی دیالۆگێکە لەنێوان سیا و کۆڤان :). سەرەتا ئەو پەڕەی کە دەمانەوێت بیهێنین دروست دەکەین.
HTML
<p>
Sia: Sillaw KOVAN, nuserani wiki chawg.org britin le Amanj, Ara, Hwkar u Cwtiyar.
<br />
Aya emet nedezani?
</p>
ناوی دەنێین xinc.html پاشان پەڕەیەکی PHP دروست دەکەین بە ناوی inc.php (وەکو نموونەیەک هەمان شت لەو بوخچەیە پاشەکەوتی دەکەین کە پەڕەی xinc.html تێدا پاشەکەوت کردووە). کۆدەکانی ئەم پەڕەیەیان بەم شێوەیە بێت:
PHP
<?php
/** emanewet be INCLUDE xinc.html Rabkeshin bo Rwnkirdnewe */
echo 'KOVAN: Min nazanim ke nusere le Wiki Chawg.org? ';
include 'xinc.html';
echo 'KOVAN: Belle dwai ew INCLUDE tewaw tegeshtim, supas bo PHP ;)';
?>
ئێستا ئەگەر تەماشای سەرچاوەی کۆدەکان بکەین تێدەگەین لە چۆنیەتی کردەکە، کە بەم شێوەیەیە:
Plaintext
KOVAN: Min nazanim ke nusere le Wiki Chawg.org? <p>
Sia: Sillaw KOVAN, nuserani wiki chawg.org britin le Amanj, Ara, Hwkar u Cwtiyar.
<br />
Aya emet nedezani?
</p>KOVAN: Belle dwai ew INCLUDE tewaw tegeshtim, supas bo PHP ;)
هەمان شتە ئەگەر ئێمە لە پەڕە ڕاکێشراوەکەدا کۆمەڵێک گۆڕاو بنووسینەوە لەمەی تریاندا بانگیان بکەین و کاریان لەگەڵ بکەین، ئەمە نموونەیەک لەسەر ئەو کردەیە. پەڕەی گۆڕاوەکان:
PHP
<?php
// nawerroki perrei goraw.php
$naw = 'Ara';
$temen = 23;
$pishe = 'Xwendkari koleji Pzishki';
?>
ئەو پەڕەیەی کە ڕایدەکێشین تیایدا بۆ کردەکە:
PHP
<?php
// eme naweroki perreieki tre demanewet goraw.php rabkeshin
include 'goraw.php';
echo 'Min nawm '.$naw.' _ye we temenim '.$temen.' salle, esta '.$pishe.'_m le zankoi Slemnany';
?>
ئێستا لە کرۆکی ئەم کردەیە تێگەیشتین، کە یەکێکە لە هەرە کردارە دووبارەکانی ڕۆژانە کە پێویستن بۆ نووسینەوەی پڕۆگرامۆکەکان و دەست لێ هەڵگرتنیان نییە. واتا پرۆگرامنووس دەبێت ئەم کردەیە تا ئەندازەیەکی زۆر باش تێبگات، وە لایەنی پاراستن و چۆنیەتی بەکاربردنی بەپێی ئەو دۆخەی بۆی دەنووسێت بزانێت.
گۆڕاوەکانی GET
هەموو پڕۆگرامۆکە زیندووەکانی ئەم زمانە پێویستیان بە بەردەوامی مامەڵەکردن لەگەڵ بەکارهێنەردا هەیە، یان لە وێبدا میوان و خاوەن ماڵ و بەڕێوەبەر…. هتد، وە ڕێگای ئەم پەیوەندییە زیندووە لەنێوان بەرامبەر وەکو مرۆڤ و بەکارهێنەر و پڕۆگرامۆکە چەندێکن، یەکێک لەو ڕێگایانە URL parameters بەستەر و ناواخنەکەی. یاخود بە گۆڕاوەکانی GET ناسراوە. ئەم گۆڕاوانە لە دوای بەستەرەکەوە دێن و بە نیشانەی پرسیار لە یەکتری جودا کراونەتەوە بۆ نموونە:
http://www.example.com/file.php?section=news
http://www.example.com/dl.php?cat=5&id=3&view=false
بەڵام وریای ئەوە ببە کە پێکهاتەی بەکاربردنی بەستەر بۆ سەرەوە بۆ نموونە #top پەیوەندی بەم باسەوە نییە و HTML ــە.
تێبینی گرنگ: تکایە لە کاری سەرەتایی نووسینی پڕۆگرامۆکە و ئامرازی بچووک بەکاری مەبە، تاوەکو تەواو تەواو هەموو لایەنەکانی بەکاربردنی، چۆنیەتی پاراستنی یان بەربەستکردنی بۆ پەلاماردان دەزانیت. چونکە خودی ئەم گۆڕاوە یەکێکە لە زۆرترین سەرئێشەکانی تووشی پرۆگرامنووسی سەرەتایی دەبێت.


وەڵامێک بنووسە