-
July 23rd, 2014, 19:44
#1
عضو انجمن
مشکل با ذخیره عدد
سلام
من می خواستم عدد بزرگی مثل 5285220129856574579 داخل یک متغیر بریزم.این عدد وقتی داخل متغیری ریخته بشه چون از نوع long هست به صورت 5.6575698371261E+18
در میاد.این عدد از خود وب سرویس به صورت long برگشت داده می شه.حالا چه طور می تونم این عدد رو به رشته تبدیل کنم چون هر کاری کردم نشد.
ممنون
-
-
July 23rd, 2014 19:44
# ADS
-
July 23rd, 2014, 20:06
#2
عضو انجمن
پاسخ : مشکل با ذخیره عدد
سلام
از strval() استفاده کنید.
با سپاس
بیش از 20 سال تجربه ما در صنعت IT
تضمین کیفیت، سرعت و پشتیبانی برای تجارت آنلاین شماست
-
تعداد تشکر ها از Zagrio.com به دلیل پست مفید
-
July 23rd, 2014, 20:18
#3
عضو انجمن
پاسخ : مشکل با ذخیره عدد

نوشته اصلی توسط
Zagrio.com
سلام
از strval() استفاده کنید.
با سپاس
سلام
فایده نداره.خودتون امتحان کنید.راه حل دیگه ای ندارید؟
-
-
July 23rd, 2014, 20:57
#4
عضو انجمن
پاسخ : مشکل با ذخیره عدد
اگه منظور تون رو درست متوجه شده باشم کافیه اون عدد را درون "" قرار بدید تا تبدیل به string بشه
مثال :
کد PHP:
<?php
$a='5285220129856574579';
echo $a;
?>
خروجی بصورت رشته به صورت زیر خواهد بود :
5285220129856574579
-
تعداد تشکر ها از shahinmq به دلیل پست مفید
-
July 23rd, 2014, 22:33
#5
عضو جدید
پاسخ : مشکل با ذخیره عدد
در واقع عدد شما به صورت float ذخیره شده
شما برای اینکه عددی به این بزرگی در php ذخیره کنید باید از GMP و یا BCMath استفاده کنید.(GMP توصیه میشود)
از کتابخانه biginteger.php هم میتونید استفاده کنید:
کد PHP:
<?php include('Math/BigInteger.php'); $bigint = new Math_BigInteger('5285220129856574579'); echo $bigint->toString();?>
-
تعداد تشکر ها ازBit-O-Byte به دلیل پست مفید
-
July 24th, 2014, 00:20
#6
عضو انجمن
پاسخ : مشکل با ذخیره عدد
سلام
متاسفانه هیچ کدوم از راه حل ها جواب نداد چون شما عدد رو به صورت رشته ای به توابع می دید درست کار می کنه اما متغیری که من بدست میارم عدد هست نه رشته.اول باید به رشته تبدیل بشه.مشکل من اینه که با هیچ روشی نمی تونم به رشته تبدیلش کنم.
-
-
July 24th, 2014, 23:17
#7
عضو جدید
پاسخ : مشکل با ذخیره عدد

نوشته اصلی توسط
sardarn
سلام
متاسفانه هیچ کدوم از راه حل ها جواب نداد چون شما عدد رو به صورت رشته ای به توابع می دید درست کار می کنه اما متغیری که من بدست میارم عدد هست نه رشته.اول باید به رشته تبدیل بشه.مشکل من اینه که با هیچ روشی نمی تونم به رشته تبدیلش کنم.
شما اون بخش از کدت رو بزار
با gmp حتما میشه
-
-
July 24th, 2014, 23:29
#8
عضو انجمن
پاسخ : مشکل با ذخیره عدد
سلام
PHP این عدد را نمی تواند بصورت integer برای شما ذخیره کند. به همین دلیل PHP آن را بصورت float تبدیل می کند.
اطلاعات و محدودیت های اعداد: PHP: Integers - Manual
همانطور که دوست عزیز در بالا گفتند از GMP می توانید string را بصورت integer بخوانید.
کد:
$num=gmp_init("5285220129856574579");
$string=gmp_strval($num);
echo $string;
با سپاس
بیش از 20 سال تجربه ما در صنعت IT
تضمین کیفیت، سرعت و پشتیبانی برای تجارت آنلاین شماست
-