السلام عليكم ورحمة الله وبركاته
درسنا اليوم عن تسريع طباعة النصوص فى php واستخدام احسن الطرق للتعامل معها
تتمثل هذه الطرق فى 7 نقاط :
اولا :
نستخدم علامات الاقتباس (') وليس (") في طباعة النصوص التى لا تحتوى على متغيرات ( سيتم التوضيح اكثر فى النقط التالية) .
ثانيا - المصفوفات :
للمصفوفات اكثر من طريقة للتعامل معها وجميعها جيدة
كود PHP:
echo $row [ $key ];
//او
echo $row [ 'key' ];
ثالثا :
عند وجود اجزاء كبيرة من اكواد html يمكنك اقفال وسم php وكتابة اكواد html لان هذا يعتبر اسرع من الطباعة بدوال ال php
رابعا :
تجنب استخدام هذه الطريقة :
كود PHP:
$string = '1';
$string .= 'and 2';
$string .= 'and 3';
$string .= 'and 4';
$string .= 'and 5';
او هذه :
كود PHP:
$string = '1'
. 'and 2'
. 'and 3'
. 'and 4'
. 'and 5';
والطريقة الافضل هي :
كود PHP:
$string = '1
and 2
and 3
and 4';
لماذا ؟
لأنه فى المثال الاول والثانى تقوم PHP بتخصيص مكان فى الذاكرة للمتغيرات المتعددة ثم تقوم بتجميع هذه الاسطر لهذا فهى تستهلك وقت اكثر من المثال الثالث لان المثال الثالث لا يقوم بتجميع الاسطر وانما طباعتها مباشرة ( يجب عند استعمال هذه الطريقة تنظيمها جيدا حتى تستطيع قراءة الكود جيدا وبسهولة فى المرة التالية )
خامسا :
يفضل عدم وضع المتغيرات فى علامات الاقتباس " " لان السيرفر سيضطر للبحث داخل النص لايجاد المتغير
كود PHP:
$string = 'this string is faster with '.$foo.' in it';
//اسرع من
$string = "this string is slower with $foo in it";
سادسا :
لطباعة اكواد كبيرة من html مع طباعة متغيرات بوسطها استخدم علامات الاقتباس الفردية ' ' ( بدلا من علامات الاقتباس المزدوجة " " (البطيئة) او الخروج والدخول من php )
كود PHP:
echo '
Hello,<br />
My name is ' , $name , ' ' , $lastname , ' and am ' , $age , ' years old.<br />
I live in ' , $city , ', ' , $country , ' since I was born.<br />
You can contact me at ' , $email , ' or by phone at ' , $phone , '<br />
Regards,<br />
' , $name , ' ' , $lastname , '<br />
' ;
هذه الطريقة من افضل الطرق واسرعها كما يمكن ان تكون مريحة جدا عندى الاستعمال فى نظام قوالب php بسيط
سابعا :
استخدام str_replace بدلا من preg_replace أو ereg_replace . ولا تقم باستخدام preg_replace أو ereg_replace الا اذا كنت حقا بحاجة الى استخدام التعبيرات القياسية .
كود PHP:
$string = "The quick brown fox jumps over the lazy dog." ;
$patterns [ 0 ] = "quick" ;
$patterns [ 1 ] = "brown" ;
$patterns [ 2 ] = "fox" ;
$replacements [ 0 ] = "slow" ;
$replacements [ 1 ] = "black" ;
$replacements [ 2 ] = "bear" ;
$string = str_replace ( $patterns , $replacements , $string );
//$string="The slow black bear jumps over the lazy dog."
هذه الطرق قرأتها فى احد المنتديات الاجنبية و هي ايضا عن تجربة شخصية
وهذا مالدي الان فإن اخطأت فمن نفسي والشيطان وإن اصبت فمن الله عز وجل
تحياتي ،، عمرو النجار