تصميم موقع الويب الخاص بك مع PHP و MySQL


الدرس: المتغيرات


الصفحة السابقة
الكثير من الاهتمام ، هذا الفصل الأساسي!
المتغيرات عنصر لا غنى عنه في أي لغة برمجة ، و PHP ليس استثناء. هذه ليست خدعة من المبرمجين ، إنها شيء من شأنه تبسيط حياتنا. بدون المتغيرات ، فلن تذهب بعيدا.
تسمح لنا المتغيرات بتخزين المعلومات مؤقتًا في الذاكرة. معهم ، سوف نكون قادرين على سبيل المثال على تذكر اسم مستعار للزائر ، لإجراء الحسابات وأشياء أخرى كثيرة!
بالاسم فقط ، عليك أن تخبر نفسك أنه شيء يتغير طوال الوقت. في الواقع، المتغير الخاص هو القدرة على التّغيّر  . ولكن ما هو بصفة ملموسة؟

ما هو المتغير؟


المتغير هو قليل من المعلومات المخزنة في الذاكرة مؤقتا . ليس لديها حياة طويلة.  في PHP ، يوجد المتغير (المعلومات) طالما يتم إنشاء الصفحة. بمجرد إنشاء صفحة PHP ، تتم إزالة جميع المتغيرات من الذاكرة لأنها لم تعد مفيدة. هذا ليس ملفًا يُخزَّن على القرص الثابت ولكنه معلومات مؤقتة صغيرة في ذاكرة الوصول العشوائي.
الأمر متروك لك لإنشاء متغيرات. تقوم بإنشائها عندما تحتاج إليها للاحتفاظ بالمعلومات.
اسم وقيمة
يتكون المتغير دائمًا من عنصرين:
  • اسمه: لتكون قادرًا على التعرف عليه ، يجب إعطاء اسم للمتغير الخاص بك. على سبيل المثال age ،
  • قيمته  : إنها المعلومات التي تحتوي عليها ، ويمكن أن تتغير. على سبيل المثال: 17.
هنا ، أعطيتك مثال لمتغير يسمى age قيمته 17.
يمكننا التعديل عندما نريد قيمة هذا المتغير ، ونقوم ببعض العمليات عليه ، إلخ. وعندما نحتاج إليها ، نسميه (بالاسم) ، وهو يخبرنا جيدًا بالقيمة التي يحتوي عليها.
على سبيل المثال ، يمكننا تخيل التبادل التالي:
  • " أنت ، أيها المتغير age ، ماذا تحتوي؟ "
  • "17"
  • "شكرا لك! "
سترى أن هذه الوحوش الصغيرة ، حتى لو كانت لا تزال تبدو ضبابية ، ستكون ضرورية حقًا لموقعك في PHP .
على سبيل المثال ، يمكنك تذكر اسم الزائر بشكل مؤقت. في متغير name ، سوف تخزن لقبه. بمجرد احتياجك إليه ، يمكنك استخدامه ، خاصة لعرض رسالة ترحيب مخصصة: "مرحبًا Foulen مرحبًا بكم في موقعي! ".
من المألوف فقط كتابة الكود باللغة الإنجليزية: في الواقع ، لن أقول ذلك بشكل كافٍ ، يمكن لأي شخص إعادة قراءة الكود الذي تكتبه ، ومن الممكن أن يقوم المطور (هـ) لا يتحدث العربية. لذا ، من أجل أسماء المتغيرات الخاصة بك ، احرص على كتابتها باللغة الإنجليزية فقط.
أنواع مختلفة من المتغيرات
المتغيرات قادرة على تخزين أنواع مختلفة من المعلومات. نحن نتحدث عن أنواع البيانات . فيما يلي الأنواع الرئيسية التي يجب معرفتها.
  • السلاسل ( string)  : السلاسل هي الاسم البرمجي المعطى للنص. يسمى كل النص سلسلة .  في PHP، وهذا النوع من البيانات له اسم string . يمكن تخزين النصوص القصيرة طالما كان ذلك ضروريًا.
  • مثال  : "Je suis un texte". سلسلة عادة ما تكون مكتوبة في علامات الاقتباس أو الفواصل العليا المعروفة باسم (علامات الاقتباس المفردة) 'Je suis un texte' . كلاهما يعمل ولكن هناك اختلاف بسيط سنكتشفه لاحقًا.
  • الأعداد الصحيحة ( int)  : هذه هي أرقام النوع 1 و 2 و 3 و 4 وما إلى ذلك. هناك أيضا بينهم الأعداد الصحيحة: -1، -2، -3 ...
  • مثال  : 42 .
  • الأرقام العشرية ( float)  : هذه هي الأرقام العشرية ، مثل 14،738. يمكن تخزين العديد من الأرقام بعد العلامة العشرية ، والتي يجب أن تكون مناسبة لمعظم الاستخدامات التي تقوم بها. كن حذرًا ، يجب كتابة الأرقام بنقطة بدلاً من الفاصلة (هذه هي اللغة الإنجليزية).
  • مثال  : 14.738.
  • Booleans ( bool)   : هذا نوع مهم للغاية يمكنه تخزين إما صواب أو خطأ. هذا يساعد على تذكر ما إذا كانت المعلومات صحيحة أو خاطئة. يتم استخدامها في كثير من الأحيان . نكتب true عن صحيح ، و  false عن خطأ.
  • مثال   :  true .
  • Nothing ( NULL)   : غريبًا كما يبدو ، نحتاج أحيانًا إلى القول إن المتغير لا يحتوي على شيء. لا شيئ. لذلك يقال أنه يستحق NULL . هذا ليس حقا نوع من البيانات ، بل هو عدم وجود نوع.
يلخص الشكل التالي ما تحتاج إلى تذكره حول الأنواع المختلفة من المعلومات التي يمكنها تخزين PHP في المتغيرات.
web dynamique php
أنواع البيانات
هذا يجب أن يعطيك فكرة عن كل شيء يمكنه تخزين PHP في الذاكرة. هذه الأنواع تكفي لإنشاء موقعنا!
الآن ، دعنا ننتقل إلى أشياء ملموسة. كيفية إنشاء متغير وكيفية عرض ما يحتويه؟

تعيين قيمة لمتغير


المُعالجات الأولى بالمتغيرات
أقترح عليك أن تبدأ بالنظر إلى كود المثال هذا:

<?php
$age = 17;
?>
باستخدام كود PHP هذا ، نقوم بإنشاء متغير:
  • اسمه age .
  • قيمته هي 17 .
لاحظ أنه لا يمكنك وضع مسافة باسم متغير. بدلاً من ذلك ، استخدم تسطير أسفل السطر  " _" .
بالنسبة للاسم ، تجنّب أيضًا أية رموز أخرى : PHP لا يقدرها كثيرًا ...
دعونا نحلل بالتفصيل الكود الذي رأيناه للتو.
  • أولاً ، نكتب الرمز "dollar" ( $) : دائمًا ما يسبق اسم المتغير. يشبه علامة الاعتراف إذا كنت تفضل ذلك: يخبر PHP "أنا أستخدم متغير" . ستتعرف دائمًا على وجود متغير من خلال وجود الرمز "dollar" ( $) .
  • ثم هناك علامة " يساوي" ( =) : هذه منطقية ، وهذا يعني أن $ age يساوي ...
  • نتيجة لذلك ، هناك قيمة المتغير ، هنا 17.
  • أخيرًا ، هناك فاصلة منقوطة لا يمكن تجنبها ( ;) والتي تسمح بإنهاء التعليمات.
بعبارات ملموسة ، ما الذي سيظهره الكود السابق؟ لا شيئ ! نعم ، طالما أنك لا تستخدم echo، لا يتم عرض أي شيء. هناك ، قام الخادم فقط بإنشاء المتغير مؤقتًا في الذاكرة ، لكنه لم يفعل أي شيء آخر.
لنفترض الآن أننا نكتب هذا:

<?php
$age_visitor = 17; // يتم إنشاء المتغير قيمته 17
$age_visitor = 23; // تغيرت قيمة المتعير و أصبحت 23
$age_visitor = 55; // تغيرت قيمة المتعير و أصبحت 55
?>
ماذا سيحدث؟  سيتم إنشاء المتغير$age_visitor   وأخذ القيمة ، بالترتيب: 17 ، 23 ، ثم 55. كل ذلك يسير بسرعة كبيرة ، حيث أن الكمبيوتر سريع للغاية ، فلن يكون لديك وقت ليقول "اوووف " أن كل هذا الكود PHP سيتم تنفيذه .
كما كان من قبل ، لا يتم عرض شيء. فقط في مكان ما في ذاكرة الكمبيوتر ،  age_visitorأخذت مساحة صغيرة مسماة القيمة 17 ، ثم 23 ، ثم 55.
استخدام أنواع البيانات
هل تتذكر أنواع البيانات التي أخبرتك بها منذ بضع دقائق؟ و string ، int، float... وهنا هو متغير على سبيل المثال لكل من هذه الأنواع.
النوع string ( سلسلة من الحروف )
يستخدم هذا النوع لتخزين النص. للقيام بذلك ، يجب عليك تضمين علامات اقتباس مزدوجة ""أو علامات اقتباس مفردة حول النص الخاص بك  '' (كن حذرًا ، فهي علامات اقتباس مفردة ) .
فيما يلي مثالان ، أحدهما يحتوي على علامات اقتباس مفردة والآخر به علامات اقتباس مزدوجة:

<?php
$name_visitor = "Mateo21";
$nam_visitor = 'Mateo21';
?>
احذر ، فخ صغير: إذا كنت تريد إدراج علامة اقتباس مفردة بينما النص محاط بعلامات اقتباس مفردة ، فيجب عليك الهروب منه كما رأينا من قبل عن طريق إدراج شرطة مائلة للخلف أمامه. الشيء نفسه ينطبق على علامات الاقتباس المزدوجة. هنا مثال لفهم:

<?php
$variable = "Mon \"nom\" est Mateo21";
$variable = 'Je m\'appelle Mateo21';
?>
في الواقع ، إذا نسيت وضع شَرطة مائلة ، فسيعتقد PHP أن هذه هي نهاية السلسلة ولن يفهم النص الذي سيتبع (سيكون لديك بالفعل رسالة Parse error ) .
من ناحية أخرى ، يمكنك بسهولة إدراج علامات اقتباس مفردة في منتصف علامات الاقتباس المزدوجة والعكس:

<?php
$variable = 'Mon "nom" est Mateo21';
$variable = "Je m'appelle Mateo21";
?>
الفرق هو خفي ، ويجب إيلاءه الاهتمام. علاوة على ذلك ، هناك فرق أكثر أهمية بين نوعي علامات الاقتباس التي سنناقشها لاحقًا.
النوع INT (عدد صحيح )
استخدمناها للتو للحصول على أمثلة سابقة. ببساطة اكتب الرقم الذي تريد تخزينه دون علامات اقتباس.

<?php
$age = 17;
?>
النوع FLOAT (الرقم العشري)
يجب عليك كتابة رقمك بنقطة بدلاً من فاصلة. هذه هي اللغة الإنجليزية.

<?php
  $poids = 57.3;
?>
النوع BOOL (قيمة منطقية)
لمعرفة ما إذا كان المتغير صحيحًا أو خاطئًا ، يجب عليك كتابة الكلمة true أو false بدون علامات اقتباس حولها (هذه ليست سلسلة!). أنصحك باختيار اسم المتغير الخاص بك حتى نفهم ما يعنيه. انظر لنفسك:

<?php
  $x = true;
  $y = false;
?>
متغير فارغ معNULL
إذا كنت ترغب في إنشاء متغير لا يحتوي على أي شيء ، فيجب عليك تمريره الكلمة الرئيسية NULL (يمكنك أيضًا كتابتها بحروف صغيرة :( null .

<?php
$no_value = NULL;	
?>
يعمل هذا ببساطة للإشارة إلى أن المتغير لا يحتوي على شيء ، على الأقل في الوقت الحالي

عرض وتسلسل المتغيرات


لقد تعلمنا كيفية إنشاء المتغيرات وتخزين المعلومات في الداخل. لكن في الوقت الحالي ، لا يعرض أي من التعليمات البرمجية المصدر أي شيء.
عرض محتويات متغير
هل تتذكر أنه يمكننا عرض النص مع echo ؟ يمكن استخدامه أيضًا لعرض قيمة المتغير!

<?php
  $age_visitor = 17;
  echo $age_visitor;	
?>
كما ترون ، فقط اكتب اسم المتغير الذي تريد عرضه.
> بالمناسبة ، لا ينبغي لنا وضع علامات اقتباس بعد ذلك echo كما علمتنا؟
لا ، عندما يتعلق الأمر بمتغير ، لا نضع علامات اقتباس حوله.
قم بإنشاء ملف PHP باستخدام كود المصدر لاختباره. لا حاجة لوضع كل HTML في كل مكان ، لا يهم ، لن تكون صفحة HTML صالحة "حقيقية" لكنها جيدة بما يكفي لاختباراتنا. يجب أن ترى ، كما هو موضح في الشكل التالي ، النتيجة المعروضة على خلفية بيضاء في متصفحك.
web dynamique php
عرض متغير
يتم عرض الرقم داخل المتغير على الصفحة (هنا 17).
التسلسل concatenate
في الواقع ، الكتابة 17 وحدها كما فعلنا لا تتحدث كثيرا. نود كتابة نص حوله لنقول: "الزائر يبلغ من العمر 17 عامًا". التسلسل هو بالضبط طريقة لتجميع النص والمتغيرات.
كيف نفعل ذلك؟ سيكون لدى الرجال الأذكياء فكرة كتابة ثلاثة تعليمات echo  :

<?php
$age_visitor = 17;
    echo "المستخدم يبلغ من العمر  ";
    echo $age_visitor;
    echo " عاما";
?>
يمكنك اختبار هذا ، وهو يعمل ، كما هو مبين في الشكل التالي.

web dynamique php
إضافة نص حول متغير
ولكن هناك أكثر ذكاء. يمكننا أن نفعل كل شيء على سطر واحد. لذلك ، هناك طريقتان وهو الآن بالتحديد أن استخدام علامات اقتباس مفردة أو مزدوجة سيحدث الفرق.
سلسل مع علامات اقتباس مزدوجة
مع اقتباسات مزدوجة ، هو أبسط. يمكنك كتابة اسم المتغير في منتصف النص وسيتم استبداله بقيمته.
بشكل ملموس ، جرب هذا الكود:

<?php
    $age_visitor = 17;
    echo " المستخدم يبلغ من العمر$age_visitor عاما";
?>
فإنه يدل على: المستخدم يبلغ من العمر 17 عاما .
في الواقع ، عند استخدام علامات الاقتباس المزدوجة ، يتم تحليل المتغيرات الموجودة في الداخل واستبدالها بقيمتها الحقيقية. لها ميزة كونها حلًا سهل الاستخدام ، لكنني أنصحك باستخدام علامات اقتباس بسيطة ، والتي سنراها الآن.
سلسل مع اقتباسات واحدة
إذا كتبت الرمز السابق في علامات اقتباس مفردة ، فستكون لديك مفاجأة مضحكة:

<?php
$age_visitor = 17;
echo ' يبلغ عمر المستخدم  $age_visitor عاما'; // ...
?>
فإنه يدل على:  يبلغ عمر المستخدم $age_visitor عاما.
الرحمة! لا يمكن ربط النص مع علامات الاقتباس المفردة؟
حسنا ، إذا! ولكن هذه المرة ، يجب عليك كتابة المتغير خارج علامات الاقتباس وفصل العناصر عن بعضها البعض بنقطة. انظر إلى:

<?php
$age_visitor = 17;
echo 'المستخدم يبلغ من العمر ' . $age_visitor . ' عاما';
?>
هذه المرة يبدو كما لو كنا نريد: المستخدم يبلغ من العمر 17 عاما .
يبدو الأمر أكثر تعقيدًا ، لكنه في الواقع الطريقة التي يستخدمها معظم مبرمجي PHP . في الواقع ، الكود أكثر قابلية للقراءة ، نجد المتغير جيدًا بينما كان في وقت سابق مثل "الغريق" في النص. من ناحية أخرى ، يجب أن يقوم محرر النصوص بتلوين المتغير ، وهو ما لم يفعله في الكود السابق.
تجدر الإشارة أيضًا إلى أن طريقة الكتابة هذه أسرع قليلا لأن PHP يرى على الفور أين المتغير ولا يحتاج إلى البحث في منتصف النص.
من الآن فصاعدًا ، سأكتب كل السلاسل في علامات اقتباس مفردة (مع استثناءات نادرة) واستخدم طريقة السلسلة الثانية التي رأيناها للتو. خذ وقتك لتعتاد عليه وسيصبح طبيعيًا في النهاية لك.

قم ببعض العمليات الحسابية البسيطة


سيكون لديك الآن جهاز الكمبيوتر الخاص بك يعمل ، وسوف ترى أنه يقوم بصرف الحسابات دون أن يتوانى. نعم ، يمكن لـ PHP أيضًا إجراء حسابات!
أوه ، أؤكد لك ، لن نقوم بإجراء حسابات ملتوية ، فقط الإضافات والطرح والضرب والقسمة. انها مستوى الجميع ، أليس كذلك؟ 
هنا ، كما يمكنك أن تتخيل ، سوف نعمل فقط على المتغيرات التي تحتوي على أرقام.
العمليات الأساسية: الجمع والطرح ...
يمثل الجدول التالي العلامات التي يجب معرفتها للقيام بالعمليات الأربع الأساسية (ستجدها على لوحة المفاتيح ، على يمين لوحة المفاتيح من حيث المبدأ).
رمز معنى
+ إضافة
- طرح
* ضرب
/ قسمة
بعد ذلك ، استخدامها ، يتدفق بشكل طبيعي. هذه بعض الأمثلة :

<?php
$nombre = 2 + 4; 
$nombre = 5 - 1; 
$nombre = 3 * 5; 
$nombre = 10 / 2; 

$nombre = 3 * 5 + 1; 
$nombre = (1 + 2) * 2;
?>
هيا ، لا تغرق ، عملية حسابية عقلية صغيرة لا تؤذي أحداً.
تحقق من حساباتي ، كما ترون أنه لا يوجد شيء معقد للغاية في كل هذا.
فقط ، لا تخف من "توفق" مع المتغيرات.
فيما يلي بعض العمليات الحسابية مع العديد من المتغيرات:

<?php
$nombre = 10;
$resultat = ($nombre + 5) * $nombre; // النتيجة هي 150 
?>
إنه منطق خالص ، لا أستطيع أن أقول لك شيئًا أكثر.
إذا فهمت أجزاء البت هذه ، فأنت تفهم كل شيء.
باقي القسمة
من الممكن القيام بنوع آخر من العمليات أقل شهرة : المودولو Modulo . هذا يمثل بقية القسمة بأكمله.
على سبيل المثال ، 6/3 = 2 وليس هناك راحة. من ناحية أخرى ، 7/3 = 2 (لأن الرقم 3 "يعيد" مرتين في الرقم 7) ويظل 1. لقد فعلت هذا النوع من العمليات الحسابية في المدرسة الابتدائية ، تذكر!
يجعل modulo من الممكن استعادة هذه "الراحة" . لإجراء عملية حسابية باستخدام باقي القسمة ، نستخدم الرمز % .

<?php
$nombre = 10 % 5; // النتيجة هي 0
$nombre = 10 % 3; // النتيجة هي 1
?>
وغيرها من العمليات؟
لقد أغفلت عمليات أكثر تعقيدًا مثل الجذر التربيعي والأسي والفعلي وما إلى ذلك. يمكن إجراء كل هذه العمليات في PHP ، لكن سيتعين عليها القيام بما يسمى بالوظائف ، وهي فكرة سنكتشفها لاحقًا. العمليات الأساسية التي رأيناها للتو كافية بشكل كافٍ لبرمجة PHP اليومية.

في الخلاصة


  • المتغير هو جزء صغير من المعلومات التي تظل مخزنة في الذاكرة أثناء إنشاء صفحة PHP . لديها اسم وقيمة.
  • هناك عدة أنواع من المتغيرات التي تخزن أنواعًا مختلفة من المعلومات: text ( string) ، أعداد صحيحة ( int) ، أرقام عشرية ( float) ، منطقية لتخزين صواب أو خطأ ( bool) ، وهلم جرا.
  • في PHP ، يبدأ اسم المتغير برمز الدولار: $ageعلى سبيل المثال.
  • يمكن عرض قيمة المتغير مع التعليمات echo .
  • من الممكن إجراء حسابات رياضية بين عدة متغيرات: الجمع والطرح والضرب ...