لديك حساب بالفعل؟ دخول
دخول  سجل الأن 
هل استطيع ان استخدم switch بهذه الطريقة
السلام عليكم
انا اريد ان استخدم متغير واحد لعرض محتوى الصفحة
مثلا
index.php?code=all
و
index.php?code=10
اقصد عندما يكون متغير الـ$_GET['code'] يساوى all نظهر جميع المقالات وعندما يكون رقمى يظهر لى المقالة المحددة فقلت اقترح عليكم هذا الكود
switch ($_GET['code']){ 
    case 'all':
        //show all articles here
    break;

    case is_numeric($_GET['app']):
        //show the specific article
    break;

}
تاريخ البداية: 21 / سبتمبر / 2011 الساعة 12:45 اخر نشاط: 21 / سبتمبر / 2011 الساعة 12:45 switch
2 إجابات
تعرف ان ده ممكن يعتبر عيب من عيوب البرمجة
انك تفحص دالة كذا مرة و انت بايدك تفحصها مرة واحدة
مثال
if (BigSlowFunctionCall() == 1) { 
... 
} else if (BigSlowFunctionCall() == 2) {
...
}
انت كدة استدعيت دالة BigSlowFunctionCall() مرتين ودى مش كفائة لكن يمكنك عملها كالتالى
$resultOfBigSlowFunctionCall = BigSlowFunctionCall();
if ($resultOfBigSlowFunctionCall == 1) { 
... 
} else if ($resultOfBigSlowFunctionCall == 2) {
...
}

بواسطة: Go
منذ: 21 / سبتمبر / 2011 الساعة 12:45

اقلك انت لو عندك كذا حالة لغير الرقمى يفضل انك تعملها كدة
if(isset($_GET['app'])){
    if(is_numeric($_GET['app'])){
        //show the specific article
    }else{
        switch ($_GET['code']){ 
            case 'all':
                //show all articles here
            break;
        
            case 'top':
                //show the top articles
            break;
        
        }        
    }
}

يعنى لو هى رقمية هيعملها على انك عايز تجيب مقالة برقمها
اما لو مش رقمية هيدخلك عن الـswitch

بواسطة: MacOS
منذ: 21 / سبتمبر / 2011 الساعة 12:45

اه فعلا دى افضل طريقة لكدة
21 / سبتمبر / 2011 الساعة 12:45

أنشر اجابتك

xهل تريد الاجابة عن هذا السؤال؟ من فضلك سجل دخول او اشترك لتتمكن من الاجابة