النتائج 1 إلى 14 من 14

الموضوع: [GOTO] احدى تقنيات php5.3

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    107

    [GOTO] احدى تقنيات php5.3



    السلام عليكم ورحمة الله وبركاته
    الساده اعضاء سوالف من
    سنتحدث بموضوعنا عن معامل GOTO احدى اضافات php 5.3

    بناء goto فى لغة php

    جاء بناء goto فى لغة الphp عن طريق المطور Andrey Hristov الذى تبعة باهتمام مبدع لغة ال php المبرمج Rasmus Lerdorf مبدع لغة php
    والذى كان على الرابط التالى : '[PHP-DEV] GOTO operator' thread - MARC

    بدأت الفكره بمحاوله لصنع طريقة لتقليص تداخلات العبارات الشرطيه والتكرار :
    كود PHP:
    do {
        
    code
        
    if ( error condition )
            break;
        
    code
        
    if ( error condition )
            break;
        
    code
    } while ( );
    cleanup code 
    وتداخلات if/elseif/else
    لمتابعه سير عملية التطوير على الرابط التالى :
    '[PHP-DEV] GOTO operator' thread - MARC

    ما هو معامل goto
    معامل goto ظهر بداية من اصدار php 5.3 بمعنى ان ما قبل ذلك فلا يمكن استخدامه
    يتيح لك معامل goto ان تقوم بتجاوز الكتل البرمجية
    فمثلا كمثال بسيط اكثر للتوضيح :

    كود PHP:
    اذا كان المصعد لا يعمل  
    اذهب الى 
    السلم
    واذا لم يكن
    اذهب الى 
    المصعد

    السلم 
    سنصعد السلم خطوه خطوه
    المصعد 
    سنضغط على الزر وننتظر الوصول 
    مثل هذا الحال فى لغة php
    كود PHP:
    <?php
    goto a;
    echo 
    'Hello';
     
    a:
    echo 
    'Goodbye';
    ?>
    هنا سيتم طبع عبارة Goodbye

    أمثله على استخدام goto

    مثال من php.net :
    كود PHP:
      <?php
    for($i=0,$j=50$i<100$i++) {
      while(
    $j--) {
        if(
    $j==17) goto end;
      }  
    }
    echo 
    "i = $i";
    end:
    echo 
    'j hit 17';
    ?>
    اذا تتبعنا الكود البرمجى هنا سنجده يصنع حلقة تكرارية
    ويضع شرط برمجى اذا كان المتغير J مساوى لل 17 سيقوم بتجاوز كلفة الكتل البرمجية
    ويذهب الى بداية الكتلة البرمجيه التى تبدأ بالاشارة end ويبدأ التنفيذ من تلك النقطه

    مثال اخر :
    كود PHP:
    for ($i 0$i 9$i++)
    {
    if (
    true) {
    break 
    blah;
    }
    echo 
    "not shown";
    blah:
    echo 
    "iteration $i\n";

    اذا تتبعنا الكود البرمجى هنا سنجد حلقة تكرارية تبدأ من الصفر حتى 9
    وشرط برمجى عند حدوثة سيقوم بالانتقال الى الكتله البرمجيه التى تبدأ بالكلمة blah


    مصادر goto

    PHP: goto - Manual
    http://www.php.net/~derick/meeting-notes.html#adding-goto
    '[PHP-DEV] GOTO operator' thread - MARC


    الى هنا نكون قد انتهيت من شرح معامل goto
    وأتمنى أن أكون قد وفقت فى الشرح وأن اكون قد اضفت الى معلوماتكم ولو شئ بسيط
    وأرجو حفظ حقوقى عند نقل الموضوع لمكان آخر


    أدام الله أيامكم بالسعادة
    مع تحياتى
    Mr.Ajax:shy:





    التعديل الأخير تم بواسطة Mr.Ajax ; 15-08-2009 الساعة 04:41 AM
    __________________
    لمراسلتى اضغط هنا


  2. #2


    هو ليس اختراع ولكنه كان موجود في اللغات القديمة حتي في الفورتران 70 !!
    ولا اجد له عذر لوجوده حاليا الصراحة
    فلو كنت تريد بشدة الذهب لشئ استخدم دالة وناديها
    وجزاك الله خيراً





    __________________
    السيف أصدق أنباء من الكتب

  3. #3
    عضو نشيط
    تاريخ التسجيل
    May 2009
    المشاركات
    121


    الخاصية جميلة وقرأت عنها في ال php.net قبل فترة

    مشكور





    __________________
    العضوية مشتركة بين 3 اشخاص

  4. #4
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    هذه العباره دار حولها اكثر من نقاش , فهي تعتبر غير جيده لان هيكلية البرنامج تصبح غير واضحه , ولا ينصح ابدلا باستخدامها.





    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .

  5. #5
    عضو نشيط
    تاريخ التسجيل
    Oct 2008
    المشاركات
    283


    فلو كنت تريد بشدة الذهب لشئ استخدم دالة وناديها
    هل كثرة الدوال في برمجتي تعد من السلبيات؟
    ماذا لو قلت لك إني أنوي إنشاء أكثر من 100 دالة واستدعائهم في صفحة واحدة؟





    __________________
    اللهم وفقني لما تحبه وترضاه...

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2008
    المشاركات
    450

    Red face



    هذه العباره دار حولها اكثر من نقاش , فهي تعتبر غير جيده لان هيكلية البرنامج تصبح غير واضحه , ولا ينصح ابدلا باستخدامها.
    معك فى هذا ...






  7. #7
    عضو فعال جدا
    تاريخ التسجيل
    Sep 2007
    المشاركات
    2,065


    شكراً على مجهودك و جزاك الله خيراً






  8. #8
    عضو نشيط
    تاريخ التسجيل
    Jan 2005
    المشاركات
    115


    ولكن عبارة goto لا يُنصح باستخدامها






  9. #9


    هل كثرة الدوال في برمجتي تعد من السلبيات؟
    ماذا لو قلت لك إني أنوي إنشاء أكثر من 100 دالة واستدعائهم في صفحة واحدة؟
    لا سلبيات ولا شئ اكتب ما تحتاج ان تكتبه في دالة وناديها عادي فالأمر لا يستحق الأهتمام لهذه الدرجة
    اما بخصوص جو تو فهي مشتتة بشدة ويمكن لخبطة الكود بها
    وهي كانت في اللغات القديمة حينما لم يكن هناك دوال ولا كائنات
    ولكن مع الوقت كل اللغات تخلصت منها

    صراحة وجودها هو مجرد زيادة مرح ومنظرة
    وجدت موضوع لمبرمجي asp يسخر منها وبصراحة لم اجد سوي ان اضحك معهم





    __________________
    السيف أصدق أنباء من الكتب

  10. #10
    عضو نشيط
    تاريخ التسجيل
    Oct 2008
    المشاركات
    283


    لا سلبيات ولا شئ اكتب ما تحتاج ان تكتبه في دالة وناديها عادي فالأمر لا يستحق الأهتمام لهذه الدرجة
    اما بخصوص جو تو فهي مشتتة بشدة ويمكن لخبطة الكود بها
    وهي كانت في اللغات القديمة حينما لم يكن هناك دوال ولا كائنات
    ولكن مع الوقت كل اللغات تخلصت منها

    صراحة وجودها هو مجرد زيادة مرح ومنظرة
    وجدت موضوع لمبرمجي asp يسخر منها وبصراحة لم اجد سوي ان اضحك معهم
    لا تتسرع في الحكم عليها، ربما يأتي يوماً تكون فيها أفضل الخيارات لك عن غيرها.





    __________________
    اللهم وفقني لما تحبه وترضاه...

  11. #11
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    135


    بالفعل استخدام goto يؤدي إلى تعقيد البرنامج وهي موجودة بلغة السي ولم افكر بإستخدامها يوماً
    ولكن وجودها لا يضر

    شكراً






  12. #12


    لا تتسرع في الحكم عليها، ربما يأتي يوماً تكون فيها أفضل الخيارات لك عن غيرها.
    هذا لو كان شئ جديد
    ولكن كما وضحت لك هي قديمة جدا وكان استخدامها كثير من قبل الدوال
    لكن مع الوقت انقرضت





    __________________
    السيف أصدق أنباء من الكتب

  13. #13
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    947


    صراحة وجودها هو مجرد زيادة مرح ومنظرة
    هذا اول شىء خطر في ذهني وانا اقرا الموضوع





    __________________
    قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير

  14. #14


    اللي اعرفه يااخي انها طريقه قديمه جدا وكانت تستخدم في بدايات اللغات البرمجيه

    وبحثوا عن بديل لها عندما وجدوا ان مع المشاريع الضخمه ستصبح مثل الخرائط اذهب لكذا وكذا

    داخل الكود حتى تصبح خريطة تتبعها لتوصل الى هدفك كي تعدل عليه

    فقرروا ان يستبدلوها بالدوال وبعد الدوال الكلاسات وبعد الكلاسات البرمجه الكائنيه ....وهكذا التطوير مستمر





    __________________
    Contact Me





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض