نمایش نتایج: از شماره 1 تا 8 , از مجموع 8

موضوع: مشکل با ذخیره عدد

  1. #1
    عضو انجمن sardarn آواتار ها
    تاریخ عضویت
    Aug 2010
    محل سکونت
    بوشهر
    نوشته ها
    956
    تشکر تشکر کرده 
    387
    تشکر تشکر شده 
    999
    تشکر شده در
    700 پست

    پیش فرض مشکل با ذخیره عدد

    سلام

    من می خواستم عدد بزرگی مثل 5285220129856574579 داخل یک متغیر بریزم.این عدد وقتی داخل متغیری ریخته بشه چون از نوع long هست به صورت
    5.6575698371261E+18
    در میاد.این عدد از خود وب سرویس به صورت long برگشت داده می شه.حالا چه طور می تونم این عدد رو به رشته تبدیل کنم چون هر کاری کردم نشد.

    ممنون

  2. # ADS




     

  3. #2
    عضو انجمن Zagrio.com آواتار ها
    تاریخ عضویت
    Jun 2014
    نوشته ها
    344
    تشکر تشکر کرده 
    73
    تشکر تشکر شده 
    322
    تشکر شده در
    256 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    سلام

    از strval() استفاده کنید.

    با سپاس
    بیش از 20 سال تجربه ما در صنعت IT
    تضمین کیفیت، سرعت و پشتیبانی برای تجارت آنلاین شماست


  4. تعداد تشکر ها از Zagrio.com به دلیل پست مفید


  5. #3
    عضو انجمن sardarn آواتار ها
    تاریخ عضویت
    Aug 2010
    محل سکونت
    بوشهر
    نوشته ها
    956
    تشکر تشکر کرده 
    387
    تشکر تشکر شده 
    999
    تشکر شده در
    700 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    نقل قول نوشته اصلی توسط Zagrio.com نمایش پست ها
    سلام

    از strval() استفاده کنید.

    با سپاس
    سلام
    فایده نداره.خودتون امتحان کنید.راه حل دیگه ای ندارید؟

  6. #4
    عضو انجمن shahinmq آواتار ها
    تاریخ عضویت
    Oct 2012
    محل سکونت
    اصفهان
    نوشته ها
    266
    تشکر تشکر کرده 
    231
    تشکر تشکر شده 
    695
    تشکر شده در
    470 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    اگه منظور تون رو درست متوجه شده باشم کافیه اون عدد را درون "" قرار بدید تا تبدیل به string بشه

    مثال :
    کد PHP:
    <?php
    $a
    ='5285220129856574579';
    echo 
    $a;
    ?>
    خروجی بصورت رشته به صورت زیر خواهد بود :


    5285220129856574579

  7. تعداد تشکر ها از shahinmq به دلیل پست مفید


  8. #5
    عضو جدید Bit-O-Byte آواتار ها
    تاریخ عضویت
    Apr 2014
    محل سکونت
    127.0.0.1
    نوشته ها
    98
    تشکر تشکر کرده 
    14
    تشکر تشکر شده 
    163
    تشکر شده در
    115 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    در واقع عدد شما به صورت float ذخیره شده
    شما برای اینکه عددی به این بزرگی در php ذخیره کنید باید از GMP و یا BCMath استفاده کنید.(GMP توصیه میشود)

    از کتابخانه biginteger.php هم میتونید استفاده کنید:

    کد PHP:
    <?php    include('Math/BigInteger.php');    $bigint = new Math_BigInteger('5285220129856574579');    echo $bigint->toString();?>
    |||||||||||||||||||||||

  9. تعداد تشکر ها ازBit-O-Byte به دلیل پست مفید


  10. #6
    عضو انجمن sardarn آواتار ها
    تاریخ عضویت
    Aug 2010
    محل سکونت
    بوشهر
    نوشته ها
    956
    تشکر تشکر کرده 
    387
    تشکر تشکر شده 
    999
    تشکر شده در
    700 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    سلام
    متاسفانه هیچ کدوم از راه حل ها جواب نداد چون شما عدد رو به صورت رشته ای به توابع می دید درست کار می کنه اما متغیری که من بدست میارم عدد هست نه رشته.اول باید به رشته تبدیل بشه.مشکل من اینه که با هیچ روشی نمی تونم به رشته تبدیلش کنم.

  11. #7
    عضو جدید Bit-O-Byte آواتار ها
    تاریخ عضویت
    Apr 2014
    محل سکونت
    127.0.0.1
    نوشته ها
    98
    تشکر تشکر کرده 
    14
    تشکر تشکر شده 
    163
    تشکر شده در
    115 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    نقل قول نوشته اصلی توسط sardarn نمایش پست ها
    سلام
    متاسفانه هیچ کدوم از راه حل ها جواب نداد چون شما عدد رو به صورت رشته ای به توابع می دید درست کار می کنه اما متغیری که من بدست میارم عدد هست نه رشته.اول باید به رشته تبدیل بشه.مشکل من اینه که با هیچ روشی نمی تونم به رشته تبدیلش کنم.
    شما اون بخش از کدت رو بزار
    با gmp حتما میشه
    |||||||||||||||||||||||

  12. #8
    عضو انجمن Zagrio.com آواتار ها
    تاریخ عضویت
    Jun 2014
    نوشته ها
    344
    تشکر تشکر کرده 
    73
    تشکر تشکر شده 
    322
    تشکر شده در
    256 پست

    پیش فرض پاسخ : مشکل با ذخیره عدد

    سلام

    PHP این عدد را نمی تواند بصورت integer برای شما ذخیره کند. به همین دلیل PHP آن را بصورت float تبدیل می کند.

    اطلاعات و محدودیت های اعداد: PHP: Integers - Manual

    همانطور که دوست عزیز در بالا گفتند از GMP می توانید string را بصورت integer بخوانید.

    کد:
    $num=gmp_init("5285220129856574579");
    $string=gmp_strval($num);
    echo $string;
    با سپاس
    بیش از 20 سال تجربه ما در صنعت IT
    تضمین کیفیت، سرعت و پشتیبانی برای تجارت آنلاین شماست


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •