/
  • کار با ارقام

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

    حالت موضوعی | حالت خطی کار با ارقام
    نویسنده پیام
    troll آفلاین
    Technology
    **

    ارسال‌ها: 16
    تاریخ عضویت: ۱۳۹۰ شهريور ۲۴
    اعتبار: 0
    تشکرها : 5
    ( 3 تشکر در 2 ارسال )
    ارسال: #1
    کار با ارقام
    با سلام دوستان
    می خواستم اعداد رو 3تا 3 تا جدا کنم
    مثلا عدد 100000 رو به 100،000 اینصورت بنویسم
    ممنون میشم دوستان با تجربه کمکم کنن

    احساس می کنم عنوان مناسبی رو انتخاب نکردم ببخشید بهترین چیزی که به ذهنم رسید همین بود.
    ۱۳۹۱ ارديبهشت ۱ ۰۱:۵۸ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    M.J آفلاین
    محمد
    *****

    ارسال‌ها: 963
    تاریخ عضویت: ۱۳۸۹ خرداد ۹
    اعتبار: 21
    تشکرها : 880
    ( 571 تشکر در 369 ارسال )
    ارسال: #2
    RE: کار با ارقام
    http://php.net/manual/en/function.number-format.php

    کد PHP:
    <?php
    echo number_format("1000000");
    echo 
    "<br />";
    echo 
    number_format("1000000",2);
    echo 
    "<br />";
    echo 
    number_format("1000000",2,",",".");
    ?> 

    //خروجی:
    1,000,000
    1,000,000.00
    1.000.000,00 
    __________________________________________________________________________
    اگه کفشت پاتو می زد و از ترس قضاوت مردم پابرهنه نشدی و درد رو به پات تحمیل کردی دیگه در مورد آزادی شعار نده !
    آلبر کامو
    (آخرین ویرایش در این ارسال: ۱۳۹۱ ارديبهشت ۱ ۰۲:۰۹ عصر، توسط M.J.)
    ۱۳۹۱ ارديبهشت ۱ ۰۲:۰۵ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : troll Reza hidensoft hamid_80386
    troll آفلاین
    Technology
    **

    ارسال‌ها: 16
    تاریخ عضویت: ۱۳۹۰ شهريور ۲۴
    اعتبار: 0
    تشکرها : 5
    ( 3 تشکر در 2 ارسال )
    ارسال: #3
    RE: کار با ارقام
    ممنون دوست عزیز
    حالتی هست که بشه برعکس این تابع عمل کنه
    یعنی عدد 100،000 رو به 100000 تبدیل کنه ؟
    ۱۳۹۱ ارديبهشت ۱ ۰۲:۲۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2715 تشکر در 1691 ارسال )
    ارسال: #4
    RE: کار با ارقام
    میتونی یه explode کنی بعد با یه foreach همه شو بچسبونی به هم.
    البته شاید راه بهتری هم باشهBig Grin
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۱ ارديبهشت ۱ ۰۳:۱۵ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : troll
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #5
    RE: کار با ارقام
    با
    str_replace می تونی
    __________________________________________________________________________
    http://mydolphin.ir
    ۱۳۹۱ ارديبهشت ۱ ۰۳:۴۱ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : Reza
    hidensoft آفلاین
    عضو ارشد
    *****

    ارسال‌ها: 1,384
    تاریخ عضویت: ۱۳۸۸ شهريور ۳
    اعتبار: 46
    تشکرها : 729
    ( 1394 تشکر در 782 ارسال )
    ارسال: #6
    RE: کار با ارقام
    کد PHP:
    function number_format_invers($number$thousands_sep ','){
      return 
    str_replace($thousands_sep""$number);

    ۱۳۹۱ ارديبهشت ۱ ۰۳:۵۹ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : troll Reza
    Reza آفلاین
    رضا شیخله
    *****

    ارسال‌ها: 3,024
    تاریخ عضویت: ۱۳۹۰ آبان ۱۶
    اعتبار: 133
    تشکرها : 2724
    ( 2715 تشکر در 1691 ارسال )
    ارسال: #7
    RE: کار با ارقام
    نقل قول: str_replace می تونی
    نگفتم راه حلهای بهتری هم هست اما چرا به فکر خودم نرسیدUndecided
    فکرکنم دلیلش همون مجردیهBig Grin
    __________________________________________________________________________
    -- - RezaWorkShop.ir - blog.RezaOnline.net
    ۱۳۹۱ ارديبهشت ۱ ۱۰:۱۰ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    oia آفلاین
    محمد ثانی
    *****

    ارسال‌ها: 2,014
    تاریخ عضویت: ۱۳۸۷ آذر ۲۶
    اعتبار: 66
    تشکرها : 2330
    ( 2091 تشکر در 1290 ارسال )
    ارسال: #8
    RE: کار با ارقام
    نقل قول: فکرکنم دلیلش همون مجردیه
    تا مجردی فکرت می تونه کا کنه
    زن بگیری که کلا تعطیله!
    ۱۳۹۱ ارديبهشت ۲ ۱۱:۵۳ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    hamid_80386 آفلاین
    حمید عباسی
    ***

    ارسال‌ها: 1,479
    تاریخ عضویت: ۱۳۹۰ بهمن ۱۶
    اعتبار: 62
    تشکرها : 1216
    ( 1253 تشکر در 748 ارسال )
    ارسال: #9
    RE: کار با ارقام
    اینم جاواش
    هم یه str_replace j توپ و هم گروهبندی اعداد

    کد:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">

    <head>
    <script type="text/javascript" language="javascript">
    <!--
    function str_replace (search, replace, subject, count) {
        // Replaces all occurrences of search in haystack with replace  
        //
        // version: 1109.2015
        // discuss at: http://phpjs.org/functions/str_replace
        // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +   improved by: Gabriel Paderni
        // +   improved by: Philip Peterson
        // +   improved by: Simon Willison (http://simonwillison.net)
        // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
        // +   bugfixed by: Anton Ongson
        // +      input by: Onno Marsman
        // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +    tweaked by: Onno Marsman
        // +      input by: Brett Zamir (http://brett-zamir.me)
        // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +   input by: Oleg Eremeev
        // +   improved by: Brett Zamir (http://brett-zamir.me)
        // +   bugfixed by: Oleg Eremeev
        // %          note 1: The count parameter must be passed as a string in order
        // %          note 1:  to find a global variable in which the result will be given
        // *     example 1: str_replace(' ', '.', 'Kevin van Zonneveld');
        // *     returns 1: 'Kevin.van.Zonneveld'
        // *     example 2: str_replace(['{name}', 'l'], ['hello', 'm'], '{name}, lars');
        // *     returns 2: 'hemmo, mars'
        var i = 0,
            j = 0,
            temp = '',
            repl = '',
            sl = 0,
            fl = 0,
            f = [].concat(search),
            r = [].concat(replace),
            s = subject,
            ra = Object.prototype.toString.call(r) === '[object Array]',
            sa = Object.prototype.toString.call(s) === '[object Array]';
        s = [].concat(s);
        if (count) {
            this.window[count] = 0;
        }

        for (i = 0, sl = s.length; i < sl; i++) {
            if (s[i] === '') {
                continue;
            }
            for (j = 0, fl = f.length; j < fl; j++) {
                temp = s[i] + '';
                repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
                s[i] = (temp).split(f[j]).join(repl);
                if (count && s[i] !== temp) {
                    this.window[count] += (temp.length - s[i].length) / f[j].length;
                }
            }
        }
        return sa ? s : s[0];
    }
    function addCommas(nStr)
    {
        nStr += '';
        x = nStr.split('.');
        x1 = x[0];
        x2 = x.length > 1 ? '.' + x[1] : '';
        var rgx = /(\d+)(\d{3})/;
        while (rgx.test(x1)) {
            x1 = x1.replace(rgx, '$1' + ',' + '$2');
        }
        //alert(x1+x2);
        return x1 + x2;
        
    }
    function changeText(ID)
    {
        var str= document.getElementById(ID).value;
        //
            var new_text = str_replace(",","", str);
        document.getElementById(ID).value=addCommas(new_text);
    }
    //-->
    </script>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled 1</title>
    </head>

    <body>
    <form method="post">
        <input name="Text1" type="text" id="T1" onkeyup="changeText('T1')"  />
    </form>
    </body>

    </html>
    Cool

    فقط تو textbox هاتون حتماً از رویداد keyUp استفاده کنید، با keyDown سمت راستی ها رو چهار رقم جدا میکنه، دلیلش رو هم که دیگه نمیگم دیگه، تابلو هست...
    __________________________________________________________________________
    هر که با مرغ هوا دوست شود - خوابش آرامترین خواب جهان خواهد بود.
    (آخرین ویرایش در این ارسال: ۱۳۹۱ ارديبهشت ۲ ۰۷:۴۷ عصر، توسط hamid_80386.)
    ۱۳۹۱ ارديبهشت ۲ ۰۷:۲۹ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : troll mohsen_danpk
    mohsen_danpk آفلاین
    عضو
    ***

    ارسال‌ها: 77
    تاریخ عضویت: ۱۳۹۱ آبان ۵
    اعتبار: 0
    تشکرها : 50
    ( 5 تشکر در 5 ارسال )
    ارسال: #10
    RE: کار با ارقام
    (۱۳۹۱ ارديبهشت ۲ ۰۷:۲۹ عصر)hamid_80386 نوشته شده توسط:  اینم جاواش
    هم یه str_replace j توپ و هم گروهبندی اعداد

    کد:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">

    <head>
    <script type="text/javascript" language="javascript">
    <!--
    function str_replace (search, replace, subject, count) {
        // Replaces all occurrences of search in haystack with replace  
        //
        // version: 1109.2015
        // discuss at: http://phpjs.org/functions/str_replace
        // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +   improved by: Gabriel Paderni
        // +   improved by: Philip Peterson
        // +   improved by: Simon Willison (http://simonwillison.net)
        // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
        // +   bugfixed by: Anton Ongson
        // +      input by: Onno Marsman
        // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +    tweaked by: Onno Marsman
        // +      input by: Brett Zamir (http://brett-zamir.me)
        // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
        // +   input by: Oleg Eremeev
        // +   improved by: Brett Zamir (http://brett-zamir.me)
        // +   bugfixed by: Oleg Eremeev
        // %          note 1: The count parameter must be passed as a string in order
        // %          note 1:  to find a global variable in which the result will be given
        // *     example 1: str_replace(' ', '.', 'Kevin van Zonneveld');
        // *     returns 1: 'Kevin.van.Zonneveld'
        // *     example 2: str_replace(['{name}', 'l'], ['hello', 'm'], '{name}, lars');
        // *     returns 2: 'hemmo, mars'
        var i = 0,
            j = 0,
            temp = '',
            repl = '',
            sl = 0,
            fl = 0,
            f = [].concat(search),
            r = [].concat(replace),
            s = subject,
            ra = Object.prototype.toString.call(r) === '[object Array]',
            sa = Object.prototype.toString.call(s) === '[object Array]';
        s = [].concat(s);
        if (count) {
            this.window[count] = 0;
        }

        for (i = 0, sl = s.length; i < sl; i++) {
            if (s[i] === '') {
                continue;
            }
            for (j = 0, fl = f.length; j < fl; j++) {
                temp = s[i] + '';
                repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
                s[i] = (temp).split(f[j]).join(repl);
                if (count && s[i] !== temp) {
                    this.window[count] += (temp.length - s[i].length) / f[j].length;
                }
            }
        }
        return sa ? s : s[0];
    }
    function addCommas(nStr)
    {
        nStr += '';
        x = nStr.split('.');
        x1 = x[0];
        x2 = x.length > 1 ? '.' + x[1] : '';
        var rgx = /(\d+)(\d{3})/;
        while (rgx.test(x1)) {
            x1 = x1.replace(rgx, '$1' + ',' + '$2');
        }
        //alert(x1+x2);
        return x1 + x2;
        
    }
    function changeText(ID)
    {
        var str= document.getElementById(ID).value;
        //
            var new_text = str_replace(",","", str);
        document.getElementById(ID).value=addCommas(new_text);
    }
    //-->
    </script>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Untitled 1</title>
    </head>

    <body>
    <form method="post">
        <input name="Text1" type="text" id="T1" onkeyup="changeText('T1')"  />
    </form>
    </body>

    </html>
    Cool

    فقط تو textbox هاتون حتماً از رویداد keyUp استفاده کنید، با keyDown سمت راستی ها رو چهار رقم جدا میکنه، دلیلش رو هم که دیگه نمیگم دیگه، تابلو هست...

    الان مشکل اینه که مثلا عدد 172.159.158 رو وارد کنی عددی که میره تو دیتا بیس 172 ست
    چه کنیم که این انقطه ها یا ویرگول ها رو بررداره؟

    حالا از اون ور اگه بخواهیم خروجیه یه فیلده کوئری رو 3رقم 3 رقم جدا کنه چی
    __________________________________________________________________________
    هر کسی را نه آنگونه که هست احساسش میکنند، بلکه بدان گونه که احساسش میکنند، هست.
    دکتر علی شریعتی
    (آخرین ویرایش در این ارسال: ۱۳۹۲ ارديبهشت ۲ ۰۲:۵۱ عصر، توسط mohsen_danpk.)
    ۱۳۹۲ ارديبهشت ۲ ۰۲:۴۸ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

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


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