㈠ php如何格式化金錢數字
PHP格式化數字的函數是number_format
關於他的用法如下:
語法: string number_format(float number, int [decimals], string [dec_point], string [thousands_sep]);
返回值: 字元串
函數種類: 數學運算
內容說明
本函數用來將浮點參數 number 格式化。若沒加參數 decimals 則返回的字元串只要整數部份,加了此參數才依參數指定的小數點位數返回。參數 dec_point 表示小數點的表示方式方法,默認值是 ".",若需要轉換成其它的小數點就可以在這個參數改掉。參數 thousands_sep 為整數部份每三位的分隔符號,默認值是 ","。本函數最特別的地方就是參數數目,最少要有一個,也就是欲格式化的字元串;也可以有二個或者四個參數,但不能用三個參數。治募?注意的是指定小數點的位數之後的數字直接舍棄,沒有四捨五入的情形。
使用範例
<?
$short_pi = "3.14159";
$my_pi = number_format($short_pi, 2);
echo $my_pi."\n"; // 3.14
$foo = 850017.9021;
$new_foo = number_format($foo, 3, ".", " ");
echo $new_foo."\n"; // 850 017.902
?>
㈡ thinkphp中int類型的時間怎麼寫月份查詢
可以使用mktime 和date函數進行 具體如下:
1:int mktime ( [int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]] )
2:string date ( string format [, int timestamp] )
返回將整數 timestamp 按照給定的格式字串而產生的字元串。如果沒有給出時間戳則使用本地當前時間。換句話說,timestamp 是可選的,默認值為 time()。
實例:
$timestamp = mktime(0, 0, 0, 12, 32, 1997);
$date = date('Y/m/d',$timestamp);
$form ->add($date);
㈢ PHP如何顯示兩位小數
一round()函數:
floatround(float$val[,int$precision])
返回將val根據指定精度precision(十進制小數點後數字的數目)進行四捨五入的結果。
precision也可以是負數或零(默認值)。
例如:
echoround(3.6);//4
echoround(3.6,0);//4
echoround(1.95583,2);//1.96
$a=12345678;
echoround($a,-3);//12346000
但是有時候如遇到這樣的數字就不行了,12.3,13.4,15,6
//我們要轉為12.30,13.40,15,60,這樣的值,就得用另外一種強大的方法了。
二sprintf()[或者printf()函數]函數
此函數源於c中強的printf()函數。所以是一個強大的格式化工具。
說明:
stringsprintf(string$format[,mixed$args[,mixed$...]])
format包含:
其格式(format)有如下值:
d有符號10進制整數
i有符號10進制整數
o無符號8進制整數
u無符號10進制整數
x無符號的16進制數字,並以小寫abcdef表示
X無符號的16進制數字,並以大寫ABCDEF表示
F/f浮點數
E/e用科學表示格式的浮點數
g使用%f和%e表示中的總的位數表示最短的來表示浮點數G同g格式,但表示為指數
c單個字元
s字元串
%顯示百分號本身
㈣ php時間格式轉換
標准時間與時間戳轉換如下:
<?php
$nowtime=date("Y-m-dH:i:s");
//標准時間轉為時間戳
$dateline=strtotime($nowtime);
//時間戳轉為標准時間
$nowtime=date('H:i:s',$dateline);
?>
PHP時間戳函數獲取英文文本日期時間:
當前時間:echo date(」Y-m-d H:i:s」,time()) 結果:2015-01-22 09:40:25
指定時間:echo date(」Y-m-d H:i:s」,strtotime(」+1 day」)) 結果:2015-01-23 09:40:25
需要注意的問題:
<一>、PHP時間大的來分有兩種,一是時間戳類型(1228348800),二是正常日期格式(2015-12-5)
<二>、php5.1以上時間戳會與實際時間相差8小時,解決辦法如下
1、最簡單的方法就是不要用php5.1以上的版本--顯然這是不可取的方法!!!
2、修改php.ini。打開php.ini查找date.timezone 去掉前面的分號= 後面加Asia/Shanghai,重啟apache伺服器即可--缺點就是如果程序
放到別人的伺服器上,不能修改php.ini,那就奈何不得了。
3、在程序中添加時間的初始化的語句即:「date_default_timezone_set("Asia/Shanghai"); 」
這樣就可以實現輸出的是北京時間了!
㈤ php中的date("D")與date("d")有什麼區別
date 將伺服器的時間格式化。 語法: string date(string format, int [timestamp]); 返回值: 字元串 函數種類: 時間日期 內容說明返回值的�字元串依配置的格式來決定。若有傳入時間戳記值,則將時間戳記格式化返回;若無傳入時間戳記值,則將目前伺服器的時間格式化返回。要將日期轉為其它的語系格式,應使用setlocale() 及 strftime() 二個函數。字元串格式化的選項如下: a - "am" 或是 "pm" A - "AM" 或是 "PM" d - 幾日,二位數字,若不足二位則前面補零; 如: "01" 至 "31" D - 星期幾,三個英文字母; 如: "Fri" F - 月份,英文全名; 如: "January" h - 12 小時制的小時; 如: "01" 至 "12" H - 24 小時制的小時; 如: "00" 至 "23" g - 12 小時制的小時,不足二位不補零; 如: "1" 至 12" G - 24 小時制的小時,不足二位不補零; 如: "0" 至 "23" i - 分鍾; 如: "00" 至 "59" j - 幾日,二位數字,若不足二位不補零; 如: "1" 至 "31" l - 星期幾,英文全名; 如: "Friday" m - 月份,二位數字,若不足二位則在前面補零; 如: "01" 至 "12" n - 月份,二位數字,若不足二位則不補零; 如: "1" 至 "12" M - 月份,三個英文字母; 如: "Jan" s - 秒; 如: "00" 至 "59" S - 字尾加英文序數,二個英文字母; 如: "th","nd" t - 指定月份的天數; 如: "28" 至 "31" U - 總秒數 w - 數字型的星期幾,如: "0" (星期日) 至 "6" (星期六) Y - 年,四位數字; 如: "1999" y - 年,二位數字; 如: "99" z - 一年中的第幾天; 如: "0" 至 "365" 其它不在上列的字元則直接列出該字元。
㈥ 在PHP中「以逗號分隔符將字元分割後存入數組」的函數是什麼
函數是$string = "1,2,3,4,5";$array = explode(",",$string); 之後就得出一個數組,$array(1,2,3,4,5);
Java 格式字元串中 『,』使用及說明:
1、Java API中解釋:public PrintStream printf(String format, Object... args)使用指定格式字元串和參輪辯數將格式化的字元串寫入此輸出流的便捷方法。
2、參數:format - 在格式字元串的語法中描述的格式字老拆符串,args - 格式字元串中的格式說明符引用的參數。
3、重點:格式字元串的語法---標志 『,』 -- 結果將包括特定於語言環境的組分隔符
4、因為在Java API 中點擊組分隔符鏈接到了獲取千位分隔符的方法,所以的確可以理解成在
printf 方法臘含缺中「,」 會在格式化輸出過程中輸出千位分隔符。
5、Java 中格式說明符可以通過相對索引引用參數。標志『<』,重用以前格式說明符的參數。也就是為什麼 %<f 會輸出 0.555000 的原因。
㈦ php 時間格式化
<?php
//設定要用的默認時區。自PHP5.1可用
date_default_timezone_set('UTC');
//輸出類似:Monday
echodate("l");
//輸出類似:Monday15thofAugust200503:12:46PM
echodate('ldSofFYh:i:sA');
//輸出:July1,2000isonaSaturday
echo"July1,2000isona".date("l",mktime(0,0,0,7,1,2000));
/*在格式參數中使用常量*/
//輸出類似:Mon,15Aug200515:12:46UTC
echodate(DATE_RFC822);
//輸出類似:2000-07-01T00:00:00+00:00
echodate(DATE_ATOM,mktime(0,0,0,7,1,2000));
//列印出當前日期
echodate('Y年m月d日');
//格式化已有時間
echodate('Y年m月d日',strtotime('1986-12-05'));
/*
輸出
Monday
Monday16thofApril201202:04:36PM
July1,2000isonaSaturday
Mon,16Apr1214:04:36+0000
2000-07-01T00:00:00+00:00
2012年04月16日
*/
?>
㈧ php 時間戳,能夠取得具體時間量的時間錯值嗎例如10分鍾的時間戳是多少剛接觸php,謝謝了。
可以生成具體時間的時間戳例如 2011-07-01 15:00:38 生成指定日期的時間戳 具體你可以參造一下php手冊的time函數--這個是生成當前時間的時間野塵則戳date函數頌棚---這個可以生成指定日期及格式化日期mktime函數---這個函數是生成指定兄指日期的時間戳的
㈨ PHP的常用系統函數有哪些
PHP自帶了大量的系統函數,使用這些函數可以完成大部分的任務。常用的有數學運算函數和日期時間函數。
1.數學運算函數:
數學運算是程序中最常執行的功能之一,PHP提供了很多系統函數實現運算功能,無須安裝、編譯和配置便可以直接使用。下表列出了常用的數學函數:
函數名稱
功能描述
函數名稱
功能描述
abs()
絕對值
is_finite()
判斷是否為有限值
acos()
反餘弦
is_infinite()
判斷是否為無限值
acosh()
反雙曲餘弦
is_nan()
判斷是否為合法數值
asin()
反正弦
lcg_value()
組合線性同餘發生器
asinh()
反雙曲正弦
log10()
以10為底的對數
atan2()
兩個參數的反正切
log()
自然對數
atan()
反正切
max()
最大值
atanh()
反雙曲正切
min()
最小值
base_convert()
在任意進制之間轉換數字
mt_getrandmax()
顯示隨機數的最大可能值
bindec()
二進制轉換為十進制
mt_rand()
生成更好的隨機數
ceil()
進一法取整
mt_sran()
播下一個更好隨機數種子
cos()
餘弦
octdec()
八進制轉換為十進制
cosh()
雙曲餘弦
pi()
圓周率
decbin()
十進制轉換為二進制
pow()
指數表達式
dechex()
十進制轉換為十六進制
rad2deg()
將弧度轉換為相應的角度值
decoct()
十進制轉換為八進制
rand()
產生一個隨機數
deg2rad()
將角度轉換為弧度
round()
對浮點數四捨五入
exp()
計算e的指數
sin()
正弦
floor()
捨去法取整
sinh()
雙曲正弦
fmod()
返回除法的浮點數余數
sqrt()
平方根
getrandmax()
顯示隨機數最大的可能值
srand()
播下隨機數發生器種子
hexdec()
十六進制轉換為十進制
tan()
正切
hypot()
計算直角三角形的斜邊長度
tanh()
雙曲正切
注意:這些數學函數僅能處理計算機中integer和float范圍的值。
示例:產生隨機密碼的的函數
function CreatePassword($length=6) //生成密碼函數,默認6位
{
$dictionary=」」; //密碼字典
$maxChar=strlen($dictionary); //獲取字典長度
$password=」」;
for($i=0; $i<$length; $i++) //隨機生成每一位
{
$password.=$dictionary[rand(0, $maxChar)]; //產生隨機數,再從字典取字母
}
return $password;
}
2.日期和時間運算:
PHP提供了豐富的日期和時間方面運算的函數。
1)UNIX時間戳:
時間戳(Timestamp)是源於UNIX系統的時間表示方法,是指從1970年1月1日(00:00:00GMT)起到現在所經過的秒數,因此也稱為UNIX時間戳。
在PHP中使用時間戳的最簡單方式就是調用time()函數,time()函數可以根據當前時間返回一個時間戳的表示法。示例:
echo 「當前時間戳為:」.time();
2)日期函數:
PHP提供的一些常用的日期函數。
①date()函數:
date()函數用於格式化一個本地日期和時間。語法格式為:
string date(string $format [, int $timestamp])
返回將整數$timestamp按照$format給定格式而產生的字元串。其中,$timestamp參數是可選的,如果沒有給出時間戳,則使用本地當前時間,即time()。
下表列出了$format格式化字元串參數的說明:
值
說明
返回值
D
月份中的第幾天,有前導零的2位數字
01到31
D
星期中的第幾天,文本表示,3個字母
Mon到Sun
J
月份中的第幾天,沒有前導零
1到31
L
L的小寫字母,表示星期幾的完整文本格式
Sunday到Saturday
N
數字表示的星期中的第幾天
1(表示星期一)到7(表示星期天)
S
每月天數後面的英文後綴,2個字元
st,nd,rd或th。可以和j一起用
W
星期中的第幾天,數字表示
0(表示星期天)到6(表示星期六)
Z
年份中的第幾天
0到366
W
年份中的第幾周,每周從星期一開始
例如:42(當年的第42周)
F
月份,完整的文本格式,例如January
January到December
M
數字表示的月份,有前導零
01到12
M
3個字母縮寫表示的月份
Jan到Dec
N
數字表示的月份,沒有前導零
1到12
t
給定月份所應有的天數
28到31
L
是否為閏年
如果是閏年為1,否則為0
o
年份數字
例如:2016
Y
4位數字完整表示的年份
例如:2016
y
2位數字表示的年份
例如:16
a
小寫的上午和下午值
am或pm
A
大寫的上午和下午值
AM或PM
g
小時,12小時格式,沒有前導零
1到12
G
小時,24小時格式,沒有前導零
0到23
h
小時,12小時格式,有前導零
01到12
H
小時,24小時格式,有前導零
00到23
i
有前導零的分鍾數
00到59
s
秒數,有前導零
00到59
e
時區標識
例如:UTC,GMT,Atlantic/Azores
I
是否為夏令時
如果是夏令時為1,否則為0
O
與格林威治時間相差的小時數
例如:+0200
Z
時差偏移量的秒數
-43200到43200
c
ISO8601格式的日期
2011-05-12T15:19:21+00:00
r
RFC822格式的日期
例如:Thu, 21 Dec 2011 06:07:08 +0200
U
從January 1 1970 00:00:00開始至今的秒數
與time()函數相同
示例:
$today=date(「m/d/y」); //結果為:07/19/12
$today=date(「F j, Y, g:i a」); //結果為:July 19, 2012, 9:07 am
$today=date(「Y年n月j日」); //結果為:2012年7月19日
$today=date(「Y-m-d H:i:s」); //結果為:2012-07-19 09:07:32
$today=date(「D M j G:i:s T Y」); //結果為:Thu Jul 19 9:07:32 CST 2012
$today=date(『i t i s t h e jS d a y』); //結果為:07 31 07 32 31 09 Asia/Shanghai 19th 19 am 12
$today=date(『\i\t \i\s \t\h\e jS \d\a\y』); //結果為:it is the 19th day
$today=date(『H:m:s \m \i\s\ \m\o \h』); //結果為:09:07:32 m is month
②gmdate()函數:
gmdate()函數實現與date()函數相同的功能,不同的是gmdate()函數返回的時間是格林威治標准時間(GMT)。語法格式為:
string gmdate(string $format [, int $timestamp])
③getdate()函數:
getdate()函數用於獲取指定的日期和時間信息。語法格式為:
array getdate([int $timestamp])
如果沒有指定時間戳$timestamp,則使用系統當前的本地時間。getdate()函數返回一個數組,數組中的每個元素代表日期和時間中的特定組成部分。下表列出了返回數組中鍵名的說明:
鍵名
說明
返回值例子
seconds
秒的數字表示
0到59
minutes
分鍾的數字表示
0到59
hours
小時的數字表示
0到23
mday
月份中的第幾天的數字表示
1到31
wday
星期中的第幾天的數字表示
0(表示星期天)到6(表示星期六)
mon
月份的數字表示
1到12
year
4位數字表示的完整年份
例如:2016
yday
一年中的第幾天的數字表示
0到365
weekday
星期幾的完整文本表示
Sunday到Saturday
month
月份的完整的文本表示
January到December
0
自從UNIX紀元開始至今的秒數
和time()的返回值類似,是一個時間戳
示例:
<?php
$today=getdate();
print_r($today);
printf(「今天是%s年%s月%s日 星期%s \n」, $today[「year」], $today[「mon」], $today[「mday」], $today[「wday」]);
printf(「現在時間是%s時%s分%s秒」, $today[「hours」], $today[「minutes」], $today[「seconds」]);
?>
執行後的結果為:
Arrar
(
[seconds]=>15
[minutes]=>37
[hours]=>9
[mday]=>19
[wday]=>4
[mon]=>7
[year]=>2016
[yday]=>200
[weekday]=>Thursday
[month]=>July
[0]=>1342661835
)
今天是2016年7月19日 星期4
現在時間是 9時37分15秒
④checkdate()函數:
checkdate()函數用於檢查一個日期是否有效,有效則返回true,否則返回false。語法格式為:
bool checkdate(int $month, int $day, int $year)
當滿足如下條件時,checkdate()函數將認為是一個有效的日期:
·$year的值是從1到32767
·$month的值是從1到12
·$day的值在給定的$month所應該具有的天數范圍之內,包括閏年情況
示例:
echo checkdate(2,29,2012)?」有效」:」無效」;
2)時間函數:
①time()函數:
time()函數使用方法非常簡單,沒有參數調用後返回當前日期和時間的UNIX時間戳。語法格式為:
int time(void)
示例:
$next50day=time()+(50*24*60*60); //計算50天以後的日期
②mktime()函數:
mktime()函數的作用與time()函數相同,都可以返回一個時間戳表示的時間。不同的是,在mktime()函數中可以指定具體的日期和時間。語法格式為:
int mktime([int $hour],[int $minute],[int $second],[int $month], [int $day],[int $year])
上述參數列表從右向左順序省略,任何省略的參數會被設置為本地日期和時間的當前值。如果指定的時間無法表示,則返回false。mktime()函數在做日期計算和驗證方面很有用。示例:
$day1=mktime(0,0,0,12,25,2012);
$day2=mktime(0,0,0,10,1,2012);
$days=($day1-$day2)/(24*60*60); //根據時間戳計算出相差的天數
③strtotime()函數:
strtotime()函數用於將可閱讀的英文日期/時間字元串轉換成UNIX時間戳。語法格式:
int strtotime(string $time[, int $now])
其中,$time參數表示要被轉換的字元串,$now表示計算返回值的時間戳。如果沒有提供$now參數,將使用系統的當前時間。strtotime()函數成功時返回時間戳,否則返回false。
④microtime()函數:
microtime()函數調用後將返回當前UNIX時間戳和微秒數。語法格式為:
mixed microtime([bool $get_as_float])
這里的可選參數$get_as_float是一個布爾值,如果為true將返回一個浮點數。默認不帶參數時將以「msec sec」格式返回一個字元串,其中msec是微秒部分,sec是UNIX時間戳。
㈩ php如何講一位整數轉換成多位整數啊,比如1轉換成001的形式,用那個函數啊,不能夠用字元拼接。--
sprintf -- Return a formatted string
string sprintf ( string format [, mixed args [, mixed ...]] )
如:echo sprintf("%03d", 1) , 輸出001
具體請參考php手冊