Professional Documents
Culture Documents
Functions
Mohammed 1
Outlines
أﻧﻮاع اﻟﺪوال
اﺳﺘﺨﺪام اﻟﺪوال
ﺑﻨﺎء اﻟﺪوال
2
أﻧﻮاع اﻟﺪوال ﻓﻲ PHP
ﻟﺪﻳﻨﺎ ٣اﻧﻮاع ﻣﻬﻤﺔ ﻣﻦ اﻟﺪوال ﻓﻲ PHP
Built-in Functions
وﻫﻲ دوال ﻣﻦ أﺳﺎس اﻟﻠﻐﺔ وﻫﻲ ﻣﺎﺗﻮﻓﺮﻫﺎ ﻟﻚ PHP
ﻟﺘﺴﺘﺨﺪﻣﻬﺎ ﻣﺒﺎﺷﺮة
User Defined Functions
وﻫﻲ اﻟﺪوال اﻟﺘﻲ ﻧﻘﻮم ﺑﺈﻧﺸﺎﺋﻬﺎ وإﺳﺘﺨﺪاﻣﻬﺎ ﻓﻲ ﻣﺸﺎرﻳﻌﻨﺎ
اﻟﺒﺮﻣﺠﻴﺔ
دوال اﻟﻤﻜﺘﺒﺎت اﻹﺿﺎﻓﻴﺔ
ﻣﺜﻞ ﻣﻜﺘﺒﺔ GDﻟﻠﺼﻮر ﻳﺘﻄﻠﺐ ﺗﺜﺒﻴﺘﻬﺎ وﺗﻔﻌﻴﻠﻬﺎ ﺣﺘﻰ ﻧﺘﻤﻜﻦ
ﻣﻦ إﺳﺘﺨﺪاﻣﻬﺎ
3
ﻣﺎﻫﻲ User Defined Functions
وﻫﻲ اﻟﺪوال اﻟﺘﻲ ﻧﻘﻮم ﺑﺘﻌﺮﻳﻔﻬﺎ وإﻧﺸﺎﺋﻬﺎ ﻟﻨﺴﺘﺨﺪﻣﻬﺎ ﻋﻨﺪ
ﻛﺘﺎﺑﺔ أﻛﻮاد PHP
4
ﻣﺎﻫﻲ User Defined Functions
ﻋﻨﺪ ﺗﻌﺮﻳﻒ أي داﻟﺔ ﺟﺪﻳﺪة داﺧﻞ ﻣﻠﻒ ﻓﺈﻧﻪ ﻟﻦ ﻳﺘﻢ ﺗﻨﻔﻴﺬ
ﻣﺤﺘﻮاﻫﺎ ﻣﺒﺎﺷﺮة ﻋﻨﺪ ﻓﺘﺢ اﻟﻤﻠﻒ ﺑﺎﻟﻤﺘﺼﻔﺢ
ﺳﻮف ﻳﺘﻢ ﺗﻨﻔﻴﺬ ﻣﺤﺘﻮى اﻟﺪاﻟﺔ ﻣﺒﺎﺷﺮة ﻋﻨﺪ إﺳﺘﺪﻋﺎء
اﻟﺪاﻟﺔ ﻓﻘﻂ.
5
ﺻﻴﻐﺔ ﻛﺘﺎﺑﺔ اﻟﺪاﻟﺔ ﻓﻲ PHP
ﻛﺘﺎﺑﺔ اﻟﺪوال وﺗﻌﺮﻳﻔﻬﺎ ﺳﻬﻞ ﺟﺪا ﻛﻞ ﻣﺎﻋﻠﻴﻚ ﻫﻮ ﺗﻌﺮﻳﻒ
اﻟﺪاﻟﺔ ﺑﺈﺳﺘﺨﺪام اﻟﻜﻠﻤﺔ functionﺛﻢ ﻛﺘﺎﺑﺔ إﺳﻢ اﻟﺪاﻟﺔ
وﺑﻌﺪﻫﺎ ﻣﺒﺎﺷﺮة ﻧﺴﺘﺨﺪم ﻋﻼﻣﺘﻲ اﻷﻗﻮاس )( ﻣﺘﺒﻮﻋﺔ
ﺑﺎﻷﻗﻮاس اﻟﻤﻌﻘﻮﻓﺔ }{ وداﺧﻞ اﻷﻗﻮاس اﻟﻤﻌﻘﻮﻓﺔ }{ ﻧﻀﻊ
اﻷواﻣﺮ اﻟﺒﺮﻣﺠﻴﺔ اﻟﺘﻲ ﻧﺮﻏﺐ ﺑﺘﻨﻔﻴﺬﻫﺎ ﻋﻨﺪ إﺳﺘﺪﻋﺎء اﻟﺪاﻟﺔ
ﻣﺜﺎل ﻣﺒﺴﻂ ﻟﺼﻴﻐﺔ ﻛﺘﺎﺑﺔ داﻟﺔ ﺑﺴﻴﻄﺔ Basic Function
Syntax
)(function functionName
{
;code to be executed
} 6
ﺗﺴﻤﻴﺔ اﻟﺪوال
اﺳﻢ اﻟﺪاﻟﺔ ﻳﻤﻜﻦ ان ﻳﺒﺪأ ﺑﺤﺮوف او ﻋﻼﻣﺔ underscoreﻓﻘﻂ
إذا ﻛﺎن ﻻﺑﺪ ﻣﻦ وﺟﻮد ارﻗﺎم ﺑﻤﺴﻤﻰ اﻟﺪاﻟﺔ ﻳﺠﺐ ان ﻳﻜﻮن اول اﻹﺳﻢ
ﺣﺮف أو underscoreﺛﻢ اﻟﺮﻗﻢ
ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﺮﻓﻨﺎ اول داﻟﺔ ﻟﻨﺎ وأﺳﻤﻴﻨﺎﻫﺎ nameوﺗﻘﻮم ﺑﻄﺒﺎﻋﺔ
رﺳﺎﻟﺔ ﻟﻠﻤﺘﺼﻔﺢ ﻋﻨﺪ زﻳﺎرة اﻟﻤﻠﻒ ﻋﻦ ﻃﺮﻳﻖ localhostوﻟﻜﻦ ﻟﻦ
ﻳﺘﻢ ﺗﻨﻔﻴﺬ ﻣﺤﺘﻮى اﻟﺪاﻟﺔ ﺣﺘﻰ ﻧﻘﻮم ﺑﺈﺳﺘﺪﻋﺎء اﻟﺪاﻟﺔ
8
اﺳﺘﺪﻋﺎء اﻟﺪاﻟﺔ
ﻳﺘﻢ اﻻﺳﺘﺪﻋﺎء ﺑﺎﺳﺘﺨﺪام اﺳﻢ اﻟﺪاﻟﺔ ﻣﺘﺒﻮﻋﺔ ﺑﺎﻷﻗﻮاس )(
وﺳﻮف ﻳﺘﻢ ﺗﻨﻔﻴﺬ ﻣﺤﺘﻮى اﻟﺪاﻟﺔ ﻣﺒﺎﺷﺮة ﻋﻨﺪ زﻳﺎرة اﻟﻤﻠﻒ
ﻣﻦ اﻟﻤﺘﺼﻔﺢ ﺑﺈﺳﺘﺨﺪام اﻟﺴﻴﺮﻓﺮ اﻟﻤﺤﻠﻲ
// call the function
;)(name
9
ﻣﺪﺧﻼت اﻟﺪوال Function Arguments
ﻳﻤﻜﻦ ﺗﻤﺮﻳﺮ اﻟﻤﻌﻠﻮﻣﺎت ﻟﻠﺪاﻟﺔ ﻋﻦ ﻃﺮﻳﻖ اﻟﻤﺪﺧﻼت
Argumentsوﻫﺬه اﻟﻤﺪﺧﻼت ﺗﺸﺒﻪ اﻟﻤﺘﻐﻴﺮات وﻳﻤﻜﻦ
ﺗﻌﺮﻳﻒ أﻛﺜﺮ ﻣﻦ ﻣﺪﺧﻞ ﻟﻠﺪاﻟﺔ ﻛﻞ ﻣﺎﻋﻠﻴﻚ داﺧﻞ ﻋﻼﻣﺘﻲ
اﻷﻗﻮاس ﻛﺘﺎﺑﺔ أﺳﻤﺎء اﻟﻤﺪﺧﻼت ﻣﻔﺼﻮﻟﻴﻦ ﻋﻦ ﺑﻌﺾ ﺑﻌﻼﻣﺔ
اﻟﻔﺎﺻﻠﺔ.
10
Function Arguments ﻣﺪﺧﻼت اﻟﺪوال
14
اﻟﻘﻴﻢ اﻹﻓﺘﺮاﺿﻴﺔ ﻟﻠﻤﺪﺧﻼت Default
Argument Value
ﻟﺤﻞ ﻫﺬه اﻟﻤﺸﻜﻠﺔ ﻧﻘﻮم ﺑﺘﻌﻴﻴﻦ ﻗﻴﻤﺔ إﻓﺘﺮاﺿﻴﺔ ﻟﻠﻤﺪﺧﻞ
ageﻋﻨﺪ ﺗﻌﺮﻳﻒ اﻟﺪاﻟﺔ ﻟﻴﺘﻢ إﺳﺘﺨﺪام ﻫﺬه اﻟﻘﻴﻤﺔ
إﻓﺘﺮاﺿﻴﺎ ﻋﻨﺪﻣﺎ ﻧﺴﺘﺪﻋﻲ اﻟﺪاﻟﺔ وﻻﻧﺪﺧﻞ ﻗﻴﻤﺔ ﻟﻠﻤﺪﺧﻞ
ageﺳﻨﻘﻮم ﺑﺘﻌﺪﻳﻞ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ ﻟﻴﺼﺒﺢ ﺷﻜﻞ اﻟﻜﻮد
<?php ﻛﺎﻟﺘﺎﻟﻲ:
// define the function with 2 argument and
assign default value for 2nd argument
{ )function name($firstName, $age = 28
echo "Hello $firstName You are $age Year
;" Old
} 15
إرﺟﺎع اﻟﻘﻴﻢ Returning values
أﺣﻴﺎﻧﺎ ﻋﻨﺪ اﻟﻌﻤﻞ ﻣﻊ اﻟﺪوال ﻓﺄﻧﺖ ﻻﺗﺮﻏﺐ ان ﺗﻘﻮم اﻟﺪاﻟﺔ
ﺑﻄﺒﺎﻋﺔ ﻧﺺ وإﻧﻤﺎ ان ﺗﻌﻴﺪ اﻟﺪاﻟﺔ ﻗﻴﻤﺔ ﻣﺤﺪدة ﻳﻤﻜﻦ ذﻟﻚ
ﺑﺈﺳﺘﺨﺪام returnداﺧﻞ اﻟﺪاﻟﺔ ﺑﻜﻞ ﺳﻬﻮﻟﺔ ﺳﻨﻘﻮم ﺑﻌﻤﻞ
داﻟﺔ ﺟﺪﻳﺪ ﺗﻘﻮم ﺑﻌﻤﻠﻴﺔ ﺣﺴﺎﺑﻴﺔ ﻋﻠﻰ ﻣﺪﺧﻠﻴﻦ ﺛﻢ إرﺟﺎع
ﻗﻴﻤﺔ اﻟﻨﺎﺗﺞ ﺑﺈﺳﺘﺨﺪام returnﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺳﻨﻄﺒﻊ اﻟﻨﺎﺗﺞ
ﻟﻠﻤﺘﺼﻔﺢ.
16
ﻣﺜﺎل
<?php .
// define the function with 2 argument
function sum($x, $y) {
$z = $x + $y;
return $z;
}
// we print the results after we call the
function and insert the arguments
echo "5 + 10 = " . sum(5, 10) . "<br>";
echo "7 + 13 = " . sum(7, 13) . "<br>";
echo "2 + 4 = " . sum(2, 4); 17
ﻣﺜﺎل
18
ﻣﻌﺎﻣﻼت اﻟﻨﺼﻮص
19
ﻣﻌﺎﻣﻼت اﻟﻨﺼﻮص
. Concatenation
$text1 . $text2
دﻣﺞ اﻟﻨﺺ ﻓﻲ اﻟﻤﺘﻐﻴﺮ text1ﺑﺎﻟﻨﺺ ﻓﻲ اﻟﻤﺘﻐﻴﺮ text2
20
ﻣﺜﺎل
<?php
;'ﺟﺎﻣﻌﺔ' = $text1
;'اﻟﺤﻜﻤﺔ ' = $text2
22
Comparison Operators
ﻋﻮاﻣﻞ اﻟﻤﻘﺎرﻧﺔ
ﻟﻠﻤﻘﺎرﻧﺔ ﺑﻴﻦ ﻗﻴﻤﺘﻴﻦ ﺳﻮاء ﻛﺎﻧﺖ ﻧﺼﻴﺔ او ﻋﺪدﻳﺔ وﻧﺎﺗﺞ
اﻟﻤﻘﺎرﻧﺔ اﻣﺎ TRUEاو FALSEﻧﻔﺼﻞ ﻣﺨﺘﻠﻒ اﻧﻮاع
اﻟﻤﻘﺎراﻧﺎت ﺑﺎﻟﺠﺪول
ﻛﺎﻟﺘﺎﻟﻲ:
23
24
ﻣﺜﺎل
$a = 10;
$b = '10';
26
ﻋﻮاﻣﻞ اﻟﺰﻳﺎدة/واﻻﻧﻘﺎص
27
ﻋﻮاﻣﻞ اﻟﺰﻳﺎدة/واﻻﻧﻘﺎص
ﺗﻨﻔﻴﺬ ﻋﻤﻠﻴﺎت زﻳﺎدة او ﻃﺮح ﻗﻴﻢ اﻟﻤﺘﻐﻴﺮات ﺑﻮاﺳﻄﺔ
ﻋﻮاﻣﻞ
اﻟﺰﻳﺎدة/اﻹﻧﻘﺎص
ﻧﻔﺼﻠﻬﺎ ﺑﺎﻟﺠﺪول
28
ﻣﺜﺎل
<?php
;$a = 10
29
Logical operators
ﻋﻮاﻣﻞ اﻟﻤﻨﻄﻖ
30
31
ﻣﺜﺎل
<?php // and
$a = 100;
$b = 50;
if ($a == 100 && $b == 50) {
// and echo "and true ";
if ($a == 100 and $b == 50) { }
echo "and trur"; // or
}
// or
if ($a == 100 || $b == 10) {
if ($a == 100 or $b == 10) { echo " or true";
echo "or true "; }
} // not
// xor
if ($a == 100 xor $b == 10) { if ($a != 300) {
echo "xor true "; echo " not equal true";
} }
32
Any Questions?
33