{"id":47827,"date":"2022-07-07T16:39:50","date_gmt":"2022-07-07T08:39:50","guid":{"rendered":"http:\/\/www.xyryd.com\/?p=47827"},"modified":"2022-07-07T16:39:51","modified_gmt":"2022-07-07T08:39:51","slug":"php%e5%b0%86%e7%a7%91%e5%ad%a6%e8%ae%a1%e6%95%b0%e6%b3%95%e8%bd%ac%e6%8d%a2%e4%b8%ba%e6%ad%a3%e5%b8%b8%e7%9a%84%e6%95%b0%e5%ad%97","status":"publish","type":"post","link":"http:\/\/www.xyryd.com\/47827.html","title":{"rendered":"PHP\u5c06\u79d1\u5b66\u8ba1\u6570\u6cd5\u8f6c\u6362\u4e3a\u6b63\u5e38\u7684\u6570\u5b57"},"content":{"rendered":"\n

\u9047\u5230\u4e00\u4e2a\u6570\u5b57\u53d8\u6210\u79d1\u5b66\u8ba1\u6570\u6cd5\u7684\u95ee\u9898\u3002\u95ee\u9898\u6765\u6e90\u4e8e\u5f53\u524d\u8f93\u51fa\u7684\u4e00\u4e2a\u6570\u5b57\u592a\u5927\u4e86\uff0c\u7136\u540e\u5b58\u4e0d\u4e0b\u4e86\u3002\u6bd4\u5982<\/p>\n\n\n\n

echo 14735037137891444444;
echo 0.00000000000000000000000000001;<\/p>\n\n\n\n

\u3000\u3000\u7136\u540e\u8f93\u51fa\u7684\u7ed3\u679c\u4e3a\uff1a<\/p>\n\n\n\n

1.4735037137891E+19\n1.0E-29<\/pre>\n\n\n\n

\u3000\u3000\u8fd9\u79cd\u60c5\u51b5\u4e5f\u7b97\u5e38\u89c1\u4e86\uff0c\u53ea\u662f\u6570\u5b57\u592a\u5927\u6216\u592a\u5c0f\u5bfc\u81f4\u7684\uff0c\u7136\u540e\u6570\u636e\u5e93\u7684\u5b58\u50a8\u5b57\u6bb5\u76f4\u63a5\u662f\u5b57\u7b26\u4e32\uff0c\u7ed3\u679c\u5c31\u51fa\u73b0\u4e86\u79cd\u79cd\u795e\u5947\u7684\u95ee\u9898\u3002<\/p>\n\n\n\n

\u3000\u3000\u7136\u540e\u5c31\u5728\u7f51\u4e0a\u627e\u4e86\u4e2a\u540c\u6837\u795e\u5947\u7684\u51fd\u6570\uff0c\u786e\u5b9e\u6709\u6548\uff0c\u4f46\u4e5f\u6ee1\u5751\u7684\u3002\u7136\u540e\u5c31\u81ea\u5df1\u5199\u4e86\u4e2a\uff0c\u903b\u8f91\u6709\u70b9\u590d\u6742\uff0c\u4f46\u6ca1\u6d89\u53ca\u5230\u6570\u5b57\u8fd0\u7b97\uff0c\u7cbe\u5ea6\u5e94\u8be5\u662f\u6709\u4fdd\u8bc1\u7684\u3002<\/p>\n\n\n\n

<?php\r\n\/**\r\n * \u5c06\u79d1\u5b66\u8ba1\u6570\u6cd5\u7684\u6570\u5b57\u8f6c\u6362\u4e3a\u6b63\u5e38\u7684\u6570\u5b57\r\n * \u4e3a\u4e86\u5c06\u6570\u5b57\u5904\u7406\u5b8c\u7f8e\u4e00\u4e9b\uff0c\u4f7f\u7528\u90e8\u5206\u6b63\u5219\u662f\u53ef\u4ee5\u63a5\u53d7\u7684\r\n * @author loveyu\r\n * @param string $number\r\n * @return string\r\n *\/\r\nfunction convert_scientific_number_to_normal($number)\r\n{\r\n    if(stripos($number, 'e') === false) {\r\n        \/\/\u5224\u65ad\u662f\u5426\u4e3a\u79d1\u5b66\u8ba1\u6570\u6cd5\r\n        return $number;\r\n    }\r\n\r\n    if(!preg_match(\r\n        \"\/^([\\\\d.]+)[eE]([\\\\d\\\\-\\\\+]+)$\/\",\r\n        str_replace(array(\" \", \",\"), \"\", trim($number)), $matches)\r\n    ) {\r\n        \/\/\u63d0\u53d6\u79d1\u5b66\u8ba1\u6570\u6cd5\u4e2d\u6709\u6548\u7684\u6570\u636e\uff0c\u65e0\u6cd5\u5904\u7406\u5219\u76f4\u63a5\u8fd4\u56de\r\n        return $number;\r\n    }\r\n\r\n    \/\/\u5bf9\u6570\u5b57\u524d\u540e\u76840\u548c\u70b9\u8fdb\u884c\u5904\u7406\uff0c\u9632\u6b62\u6570\u636e\u5e72\u6270\uff0c\u5b9e\u9645\u4e0a\u6b63\u786e\u7684\u79d1\u5b66\u8ba1\u6570\u6cd5\u6ca1\u6709\u8fd9\u4e2a\u95ee\u9898\r\n    $data = preg_replace(array(\"\/^[0]+\/\"), \"\", rtrim($matches[1], \"0.\"));\r\n    $length = (int)$matches[2];\r\n    if($data[0] == \".\") {\r\n        \/\/\u7531\u4e8e\u6700\u524d\u9762\u76840\u53ef\u80fd\u88ab\u66ff\u6362\u6389\u4e86\uff0c\u8fd9\u91cc\u662f\u5c0f\u6570\u8981\u5c060\u8865\u9f50\r\n        $data = \"0{$data}\";\r\n    }\r\n\r\n    \/\/\u8fd9\u91cc\u6709\u4e00\u79cd\u7279\u6b8a\u53ef\u80fd\uff0c\u65e0\u9700\u5904\u7406\r\n    if($length == 0) {\r\n        return $data;\r\n    }\r\n\r\n    \/\/\u8bb0\u4f4f\u5f53\u524d\u5c0f\u6570\u70b9\u7684\u4f4d\u7f6e\uff0c\u7528\u4e8e\u5224\u65ad\u5de6\u53f3\u79fb\u52a8\r\n    $dot_position = strpos($data, \".\");\r\n    if($dot_position === false) {\r\n        $dot_position = strlen($data);\r\n    }\r\n\r\n    \/\/\u6b63\u5f0f\u6570\u636e\u5904\u7406\u4e2d\uff0c\u662f\u4e0d\u9700\u8981\u70b9\u53f7\u7684\uff0c\u6700\u540e\u8f93\u51fa\u65f6\u4f1a\u6dfb\u52a0\u4e0a\u53bb\r\n    $data = str_replace(\".\", \"\", $data);\r\n\r\n\r\n    if($length > 0) {\r\n        \/\/\u5982\u679c\u79d1\u5b66\u8ba1\u6570\u957f\u5ea6\u5927\u4e8e0\r\n\r\n        \/\/\u83b7\u53d6\u8981\u6dfb\u52a00\u7684\u4e2a\u6570\uff0c\u5e76\u5728\u6570\u636e\u540e\u9762\u8865\u5145\r\n        $repeat_length = $length - (strlen($data) - $dot_position);\r\n        if($repeat_length > 0) {\r\n            $data .= str_repeat('0', $repeat_length);\r\n        }\r\n\r\n        \/\/\u5c0f\u6570\u70b9\u5411\u540e\u79fbn\u4f4d\r\n        $dot_position += $length;\r\n        $data = ltrim(substr($data, 0, $dot_position), \"0\").\".\".substr($data, $dot_position);\r\n\r\n    } elseif($length < 0) {\r\n        \/\/\u5f53\u524d\u662f\u4e00\u4e2a\u8d1f\u6570\r\n\r\n        \/\/\u83b7\u53d6\u8981\u91cd\u590d\u76840\u7684\u4e2a\u6570\r\n        $repeat_length = abs($length) - $dot_position;\r\n        if($repeat_length > 0) {\r\n            \/\/\u8fd9\u91cc\u7684\u503c\u53ef\u80fd\u662f\u5c0f\u4e8e0\u7684\u6570\uff0c\u7531\u4e8e\u5c0f\u6570\u70b9\u8fc7\u957f\r\n            $data = str_repeat('0', $repeat_length).$data;\r\n        }\r\n\r\n        $dot_position += $length;\/\/\u6b64\u5904length\u4e3a\u8d1f\u6570\uff0c\u76f4\u63a5\u64cd\u4f5c\r\n        if($dot_position < 1) {\r\n            \/\/\u8865\u5145\u6570\u636e\u5904\u7406\uff0c\u5982\u679c\u5f53\u524d\u4f4d\u7f6e\u5c0f\u4e8e0\u5219\u8868\u793a\u65e0\u9700\u5904\u7406\uff0c\u76f4\u63a5\u8865\u5c0f\u6570\u70b9\u5373\u53ef\r\n            $data = \".{$data}\";\r\n        } else {\r\n            $data = substr($data, 0, $dot_position).\".\".substr($data, $dot_position);\r\n        }\r\n    }\r\n    if($data[0] == \".\") {\r\n        \/\/\u6570\u636e\u88650\r\n        $data = \"0{$data}\";\r\n    }\r\n    return trim($data, \".\");\r\n}<\/code><\/pre>\n\n\n\n

\u7b80\u5355\u7684\u6d4b\u8bd5\u6570\u636e
1.12E8 ————- 112000000
1.12E3 ————- 1120
1.12E2 ————- 112
1.12E0 ————- 1.12
1.12E-1 ———— 0.112
1.12E-2 ———— 0.0112
1.12E-8 ———— 0.0000000112
0.112E1 ———— 1.12
0.112E2 ———— 11.2
0.112E4 ———— 1120
0.112E-2 ———– 0.00112
0000.112E-2 ——– 0.00112
0000.112000E-2 —– 0.00112
.112E-2 ———— 0.00112
.112E2 ————- 11.2<\/p>\n","protected":false},"excerpt":{"rendered":"

\u9047\u5230\u4e00\u4e2a\u6570\u5b57\u53d8\u6210\u79d1\u5b66\u8ba1\u6570\u6cd5\u7684\u95ee\u9898\u3002\u95ee\u9898\u6765\u6e90\u4e8e\u5f53\u524d\u8f93\u51fa\u7684\u4e00\u4e2a\u6570\u5b57\u592a\u5927\u4e86\uff0c\u7136\u540e\u5b58\u4e0d\u4e0b\u4e86\u3002\u6bd4\u5982 echo  […]<\/p>\n","protected":false},"author":1,"featured_media":43088,"comment_status":"open","ping_status":"closed","sticky":false,"template":"single-with-sidebar","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[13],"aioseo_notices":[],"_links":{"self":[{"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/posts\/47827"}],"collection":[{"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/comments?post=47827"}],"version-history":[{"count":0,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/posts\/47827\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/media\/43088"}],"wp:attachment":[{"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/media?parent=47827"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/categories?post=47827"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.xyryd.com\/wp-json\/wp\/v2\/tags?post=47827"}],"curies":[{"name":"wp","href":"http:\/\/api.w.org\/{rel}","templated":true}]}}