السلام عليكم ورحمة الله وبركاتة
صباح الخير \ مساء الخير
اخواني الكرام لدي دالة وجدتها في نظام قوالب ولكني لم افهمها جيداً وأملي بالله ثم بكم
الدالة
function add($arr_name,$limit = 10){
$arr = $GLOBALS[$arr_name];
$page = $GLOBALS[_GET][$arr_name];
$pagestart = ($page*$limit > count($arr))?0:$page*$limit;
$pageend = ($page*$limit+$limit > count($arr))?count($arr):$page*$limit+$limit;//need some Optimization
for($i=$pagestart;$i<$pageend;$i++) $page_array[] = $arr[$i];
return $GLOBALS[$arr_name] = $page_array;
}المصفوفة
$page = $GLOBALS[_GET][$arr_name];
لم افهم مالمعنى من _GET
اعلم بأنها مصفوفة $_GET
بأعتقادي والله اعلم بأنها تأتي بالمتغير من الرابط كالطريقة المعتاده
$_GET["id"]
ولكن لو كان اعتقادي صحيح
أين القيمة لـ
$page = $GLOBALS[_GET][$arr_name]; هنا pageend = ($page*$limit > count($arr))?count($arr):$page*$limit+$limit;//need some Optimization من أين اتت قيمة المتغير $page وتم ضربها في قيمة $limit
عملتها بالطريقة التالية
ملف HTML
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>New Web Project</title> </head> <body> <a href="n.php?var=4">Click Here</a> </body> </html>
ثم عملت جلب لـ للمتغير VAR
ملف PHP
<?php
function add($arr_name,$limit = 10){
$arr = $GLOBALS[$arr_name];
print_r($arr);
$page = $GLOBALS[_GET][$arr_name];
print_r($page);
$pagestart = ($page*$limit > count($arr))?0:$page*$limit;
$pageend = ($page*$limit+$limit > count($arr))?count($arr):$page*$limit+$limit;//need some Optimization
for($i=$pagestart;$i<$pageend;$i++) $page_array[] = $arr[$i];
return $GLOBALS[$arr_name] = $page_array;
}
echo add("var")
?>هنا الطريقة لم تنجح
ولكن هنا نجحة في تشغيل الدالة ولا اعلم هل هي صحيحه او لا ولكني نجحت في تشغيلها بالشكل التالي :
<?php
function add($arr_name,$limit = 10){
$arr = $GLOBALS[$arr_name];
print_r($arr);
$page = $GLOBALS[_GET][$arr_name];
print_r($page);
$pagestart = ($page*$limit > count($arr))?0:$page*$limit;
$pageend = ($page*$limit+$limit > count($arr))?count($arr):$page*$limit+$limit;//need some Optimization
for($i=$pagestart;$i<$pageend;$i++) $page_array[] = $arr[$i];
return $GLOBALS[$arr_name] = $page_array;
}
$c = array(1,2,3,4,5,6,7,8,9,0,8,7);
$v = add("c");
echo $v[0];
?>لوكانت الطريقة الثانية صحيحه
لماذا وضعت المصفوفة (قيت)
$page = $GLOBALS[_GET][$arr_name];
انا لم استوعبها جيداً
فأن كنت مخطئ ارجو منكم أرشادي للطريقة الصحيحة
وجعلها الله في ميزان حسناتكم