/
  • روش صحیح در قرار دادن مقدار یک متغیر در یک رشته

  • ارسال پاسخ   امتیاز موضوع:
    • 1 رأی - میانگین امیتازات: 5
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    نویسنده پیام
    zoghal آفلاین
    صالح سوزنچی
    *****

    ارسال‌ها: 1,760
    تاریخ عضویت: ۱۳۸۷ دي ۲۵
    اعتبار: 23
    تشکرها : 1500
    ( 1729 تشکر در 992 ارسال )
    ارسال: #1
    روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    قبلا در سایت قدیم موردی رو خونده بودم اما فراموش کردم
    کدوم روش سرعت بیشتری دارد

    کد PHP:
        $str "text ".$var."Text";
        
    $str 'text '.$var.'Text';
        
    $str " text $var text ";
        
    $str " text {$var}  text"
    ۱۳۸۷ اسفند ۲۱ ۰۲:۱۱ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : Y.P.Y cyletech
    zoghal آفلاین
    صالح سوزنچی
    *****

    ارسال‌ها: 1,760
    تاریخ عضویت: ۱۳۸۷ دي ۲۵
    اعتبار: 23
    تشکرها : 1500
    ( 1729 تشکر در 992 ارسال )
    ارسال: #2
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    انجام دادم

    کد :
    کد PHP:
    $var ="!@#$%%^^&*()QWERTYUIOP{halskdjfhlaksjdhflkasjdhflkajdhflkajsdhflkjasdhflkasdhflkajdhs​fkljashdflkjahdsfkljahdsfkuuy4eiryew897rf6879df6vsdfuvgysiudfgu!@#$%^&*()_+_)(*&^%$#@#$%^&*()_+_)(*&^%$#)))):LKJHGFDSAXZXCVBNM<>}";
    echo 
    microtime()."<br />";
    $str1 'text111111111111111111111111111111111 '.$var.'Tex111111111111111111111111111111111111111t';
    echo 
    microtime()."<br />";
    $str2 "text111111111111111111111111111111111 {$var} Tex111111111111111111111111111111111111111t";
    echo 
    microtime()."<br />";
    $str3 "text111111111111111111111111111111111 $var Tex111111111111111111111111111111111111111t";
    echo 
    microtime()."<br />"

    خروجی :
    کد:
    0.25704000 1236727917
    0.25712600 1236727917
    0.25715200 1236727917
    0.25717200 1236727917

    نتیجه :

    کد:
    $str1 = 8600
    $str2 = 2600
    $str3 = 2000

    واقعا جالب بود
    (آخرین ویرایش در این ارسال: ۱۳۸۷ اسفند ۲۱ ۰۳:۵۸ صبح، توسط zoghal.)
    ۱۳۸۷ اسفند ۲۱ ۰۳:۵۷ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : molana Y.P.Y aligilani1986 amir.s hosseintdk775 admin sama01 cyletech nasserghiasi
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #3
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    در مورد بنچمارک بیشتر دقت کنید
    باید یک حلقه تشکیل بدید که مثلا 1000 بار این کار رو انجام بده و برای هر کدوم از گزینه ها هم به صورت جدا گانه تست کنید.
    ۱۳۸۷ اسفند ۲۱ ۰۵:۰۰ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : nasserghiasi
    zoghal آفلاین
    صالح سوزنچی
    *****

    ارسال‌ها: 1,760
    تاریخ عضویت: ۱۳۸۷ دي ۲۵
    اعتبار: 23
    تشکرها : 1500
    ( 1729 تشکر در 992 ارسال )
    ارسال: #4
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    همینطوریش عیان هست، Big Grin وای به حال این که تو لوپ هم بندازیمش
    ۱۳۸۷ اسفند ۲۱ ۰۸:۳۸ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #5
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    از کش ها غافل نشید
    برای benchmark همیشه توی یک رویه طولانی بزارید
    ۱۳۸۷ اسفند ۲۱ ۰۹:۳۰ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : nasserghiasi
    amir.s آفلاین
    عضو
    ***

    ارسال‌ها: 148
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 3
    تشکرها : 453
    ( 186 تشکر در 99 ارسال )
    ارسال: #6
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    سلام

    وحید جان یه زحمت میکشی در مورد benchmark یه توضیح بدی . یادمه که خوندم ولی کلا کاربردش رو نمی دونم ... Wink
    ۱۳۸۷ اسفند ۲۲ ۱۱:۲۸ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    میلاد آفلاین
    برنامه نویس
    ***

    ارسال‌ها: 182
    تاریخ عضویت: ۱۳۸۷ بهمن ۲۵
    اعتبار: 2
    تشکرها : 66
    ( 136 تشکر در 74 ارسال )
    ارسال: #7
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    سلام
    من خاطرم هست که چند جا خونده بودم استفاده از { و } سرعت دسترسی به متغییر را بالا میبره، اما تا حالا تست نکرده بودم.
    اما توی چند تا تستی که بعد از دیدن این تاپیک کردم با مقادیر مختلف و حالات مختلف منم به نتیجه مشابه رسیدم که استفاده از روش آخر در مثال فوق سرعت بیشتری داره.
    __________________________________________________________________________
    Two hands working can do more than a thousand clasped in prayer
    ۱۳۸۷ اسفند ۲۳ ۰۱:۴۱ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #8
    RE: روش صحیح در قرار دادن مقدار یک متغیر در یک رشته
    بچ مارک یعنی تست دیگه. داخل php همیشه یا دنبا این هستیم که سرعت رو بنچمارک کنیم یا رمی رو که میگیره (بیشتر سرعت ) که قبل از پروسه و بعدش تایم رو به صورت میکرو تایم می گیریم.
    اما چند نکته در مورد بنچ مارک وجود داره.
    وقتی که دارید بنچمارک می کنیم باید کامپیوتر در حالت طبیعی باشه. تست رو نباید با همدیگه انجام بدید بلکه هر کدوم رو باید جدا جدا انجام بدید
    سعی کنید cache رو حذف کنید و نذارید عمل کش انجام بشه. عمل رو در تعداد دفعات بالا انجام بدید
    نرم افزار apache benchmark هم هست که با نام ab می شناسیم که اون دیگه برای benckmark کردن لینکهاست
    ۱۳۸۷ اسفند ۲۷ ۰۶:۰۶ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : amir.s sama01 cyletech nasserghiasi
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS