المقصود من المتغير المعقد أو من فكرة المتغير المعقد هو أنه متغير يتم إنشائه بطريقة معقدة أي ليس بالطريقة العادية والمتعارف عليها ..
فالطريقة المعروفة هي أن تكتب $ يليها إسم المتغير بشرط أن لا يبدأ برقم .. كلام سليم ومن الأمثلة على ذلك :
وكما ترى فهذه المتغيرات متغيرات عادية ومعروفة ... طيب ما هي فكرة المتغيرات المعقدة ؟ فكرة المتغيرات المعقدة هي أنك تقوم بإنشاء متغير معين بشكل غير مباشر وإنما سيتم بناء المتغير على مجموعة من القيم .. ولتوضيح هذا الكلام تابع مايلي : القاعدة : المتغير المعقد أو الـ complex variable يبدأ بـ $ مثل المتغير العادي ثم يليه قوس فتح الدالة { وبعد ذلك اكتب ماتريده من نصوص وأرقام بشرط أن يبدأ مابداخل القوس بحرف أو _ وبعدها أغلق القوس بـ } ... إليك الأمثلة الآن إفترض أني أريد إنشاء متغير معقد بإسم welcome_to_my777 يمكن كتابة هذا المتغير بالطريقة العادية ولكن سأعطيه بالطريقة المعقدة لكي يسهل فهمه وإليك المثال ..
الآن لاحظ في الأعلى كل الحكاية أن php جمعت التعبير الموجود داخل القوسين{} وقامت بتنسيقه ومن ثم أسندت له علامة $ وأصبح متغير وللترسيخ لاحظ المثال التالي :
<?php
$foo
$_bar
$__swalif
?>
$foo
$_bar
$__swalif
?>
وكما ترى فهذه المتغيرات متغيرات عادية ومعروفة ... طيب ما هي فكرة المتغيرات المعقدة ؟ فكرة المتغيرات المعقدة هي أنك تقوم بإنشاء متغير معين بشكل غير مباشر وإنما سيتم بناء المتغير على مجموعة من القيم .. ولتوضيح هذا الكلام تابع مايلي : القاعدة : المتغير المعقد أو الـ complex variable يبدأ بـ $ مثل المتغير العادي ثم يليه قوس فتح الدالة { وبعد ذلك اكتب ماتريده من نصوص وأرقام بشرط أن يبدأ مابداخل القوس بحرف أو _ وبعدها أغلق القوس بـ } ... إليك الأمثلة الآن إفترض أني أريد إنشاء متغير معقد بإسم welcome_to_my777 يمكن كتابة هذا المتغير بالطريقة العادية ولكن سأعطيه بالطريقة المعقدة لكي يسهل فهمه وإليك المثال ..
<?php
$start = 'welcome'; ${$start.'_to_my'.'777'} = 500; //هنا يتم تشكيل المتغير المعقد وإعطائه القيمة echo $welcome_to_my777;
?>
$start = 'welcome'; ${$start.'_to_my'.'777'} = 500; //هنا يتم تشكيل المتغير المعقد وإعطائه القيمة echo $welcome_to_my777;
?>
الآن لاحظ في الأعلى كل الحكاية أن php جمعت التعبير الموجود داخل القوسين{} وقامت بتنسيقه ومن ثم أسندت له علامة $ وأصبح متغير وللترسيخ لاحظ المثال التالي :
<?php
$a = 'one';
$b = 'tow';
${$a} = 1;
${$b} = 2; ${'the_result_is'} = $one + $tow; echo $the_result_is; ?>
الآن لاحظ قيمة المتغير a هي one و b هي tow وعندما وضعنها في صورة متغير معقد خرج لنا المتغيرين one و tow ولهما القيم 1,2 و في الأخير أضفنا الناتج إلى متغير معقد بإسم the_result_is وعندها إستخدمناه بشكله العادي لطباعة الناتج وسيكون الناتج هو 3 ...
وأرجوا أن تكون الفكرة قد اتضحت ...
وهذا مالدي الآن فإن أخطأت فمن نفسي والشيطان وإن أصبت فمن الله عز وجل ...
الكاتب عبدالله عيد$b = 'tow';
${$a} = 1;
${$b} = 2; ${'the_result_is'} = $one + $tow; echo $the_result_is; ?>