مقدمة :

الحـمـد لـله رب الـعـالمين صلى الله وسلم على سيدنا محمد إمام المرسلين وخاتم النبيين وعلى آله وصحبه أجمعين ,

في العصر الحديث ظـهـرت عـدة لـغـات بـرمـجيـة  للـويـب كـلـغة jsp ولـغـة asp وغـيـرها لكن اللغة التي اثبتت

جـدارتـهـا وقـوتـهـا فـي هـذا المـجـال وهي لغة php التي  انشقت من لغتها الام لغة c بالاضافة الى كونها مجانية و مفتوحة المصدر حيث تصل نسبة المـواقـع المبرمجة بهذه اللغة حـتـى %75 مـن مـجـمل الـمـواقـع الـتفاعلية

ومـن أشهرها موقع التواصل الجتماعـي Facebook بالاضافة الى الموسوعة

الحر ة wikipedia و wordpress و ... غيرها .

تعريف مختصر عن لغة PHP: 

هي تعد لغة حرة مفتوحة المصدر  لها تشابه كبير مع لغة c ومن كانت له دراية من قبل مع هذه اللغة فلن يجد صعوبة في فهم لغة php  , وتعد مجانية الاستخدام و مخصصة لتطوير تطبيقات الويب وبيئة

تطويرها هي Linux .



 المعروف ان صفحة الويب  تتضمن عدة لغات برمجية  ولتبيين 

أكواد PHP  للمترجم حتى يتعرف عليها يجب تضمينها في وسم الفتح php?> ووسم الغلق <?  .


 و الان لكتابة جملة إفتتاحية  ! world helloً   على المتصفح نستخدم echo بأقواس أو بدون أقواس كالتالي :

<?php

 echo ("hello ");

 echo "world !!";

<?

نضع هذا الكود السابق في ملف  باسم php.test ونقوم بعمليةتنفيذ الكود عن طريق كتابة رابط الصفحة في

 الُمتصفح .

ملاحظة : ُمسموح لك باستخدام المسافات الفارغة و السطر كيفما تشاء  عند كتابة الكود ولكن يجب

 الفصل بين الوامر البرمجية بالفاصلة المنقوطة ";“

يمكننا تطبيق وسوم الـ HTML وطباعتها كالتالي :

<?php

 echo "<div style='color:#F00;'>hello world !!</div>";

<?

 وقد قمت بإستبدال علامة الاقتباس المزدوجة إلى مفردة حتى لا يحدث تضارب بين العلامتين

 بهذا الشكل 

:

<?php

 echo '<div style="color:#F00;">hello world !!</div>';

<?

وسنتكلم عن الفرق بين الطريقتين لاحقا .

بامكاننا  كذلك إستخدام العلامة \ قبل العلامة التي لا نريد أن يحدث لها تضارب مع علامة أخرى


بهذا الشكل :

<?php

 echo "<div style=\"color:#F00;\">hello world !!</div>";

<?

للدمج نستخدم علمة النقطة كالتالي . :

<?php

 echo "hello"." world !!";

<?

التعليقات في أكواد php: 

لاضافة تعليق سطر واحد تستخدم العلامتين// أو العلامة #  ويمكن إستخدام بداية التعليق

بالرمز*/ وإنتهائه بالرمز /* لحصر ما بينهما

<?php

تعليق سطر واحد //

تعليق سطر واحد #

/* حصر التعليق */

/* 

حصر تعليق أكثر من سطر

حصر تعليق أكثر من سطر

*/

?>

المتغيرات :

 نحتاج لتعريف متغير في لغة php   العلامة$ وتكون قبل اسم المتغير ولا يشترط أن

تضع  قيمة في بداية التعريف .

العمليات الحسابية :

يمكن القيام بعمليات حسابية مختلفة في لغة php كغيرها من لغات البرمجة ( الجمع + الطرح - الضرب * القسمة / باقي القسمة% )   .

مثال :

<?php

$var1 = 10; 

اسناد عدد صحيح //

اسناد عدد كسري // ;23.20 = var2$

عملية اضرب متغيرين // ;var2*$var1 = $var3$

عملية قسمة متغيرين // ;var2/$var1 = $var4$

عملية باقي القسمة // ;var2%$var1 = $var5$

echo '$var1+$var2 = '.($var1+$var2).'<br>'; // عملية ناتج طباعة

الجمع وطباعة اسماء المتغيرات

echo "$var1+$var2 = ".($var1+$var2).'<br>'; // عملية ناتج طباعة

الجمع وطباعة قيم المتغيرات

echo $var3.'<br>'.$var4."<br>".$var5; // المتغيرات باقي طباعة

 <?

 في المثال السابق يوضح الفرق بين إستخدام علامة الاقتباس المزدوجة والمفردة حيث السلسلة النصية التي في وسط

 علامتي إقتباس مزدوجتين عندما يكون بها اسم متغير يتم طباعة قيمته وفي

علامتي اقتباس المفردتين يتم طباعة اسم المتغير وليس قيمته .

- هل لغة php  كباقي اللغات تتم العمليات الحسابية على المتغيرات العددية فقط او تصدر أخطاء عند مخالفة هذا الامر ؟ 

 سنجيب على هذا السؤال في المثال التالي :

<?php

$var1 = 30;

سلسة نصية تبدأ برقم // ;'10user1 = 'var2$

سلسة نصية تبدأ بحرف // ;'a120 = 'var3$

$var4 = true; 

$var5 = false;

$var6 = null;

قيمة نصية بها أعداد وحروف // ;'20a60 = 'var7$

$var8 = '20.13hhr60.12';

echo "$var1+$var2 = ".($var1+$var2).'<br>';

echo "$var1+$var3 = ".($var1+$var3).'<br>';

echo "$var1+$var4 = ".($var1+$var4).'<br>';

echo "$var1+$var5 = ".($var1+$var5).'<br>';

echo "$var1+$var6 = ".($var1+$var6).'<br>';

echo "$var1+$var7 = ".($var1+$var7).'<br>';

echo "$var1+$var8 = ".($var1+$var8).'<br>';

<?

قم بتنفيذ المثال السابق ولاحظ النتيجة و يمكنك استخدام معاملة التحويل

التالية :

int لتحويل نوع المتغير الى أرقام

double لتحويل نوع المتغير الى عدد ذو فاصلة عائمة

float لتحويل نوع المتغير الى عدد طويل

 bool , boolean لتحويل نوع المتغير الى قيمة منطقية

string لتحويل نوع المتغير الى سلسلة نصية


أحدث أقدم