php流程控制替代語法:分支和迴圈結構的替代語法。
可以使用php流程控制替代語法對html與php進行混搭。
示例:列印99乘法表,使用**展示:
<?php for($i=1;$i<10;$i++)?>
<?php }?>
等價於:
<?php for($i=1;%i<10;$i++):?>
<?php for($j=1;$j<=$i;$j++):?>
<?php echo $i.'*'.$j.'='.$i*$j;?>
<?php endfor;?>
<?php endfor;?>
執行效果如下:
for(){}等價與於:
for():
......
endfor;
if(){}等價於:
if():
......
endif;
switch、while、foreach等都可以使用。
使用php流程控制的替代語法優點:
1、使html和php混合頁面**更加乾淨整齊。
2、流程控制邏輯更清晰,**更容易閱讀。
php浮點型:
浮點型:小數型別及超過整型所能儲存範圍的整數(不保證精度),精度範圍大概在15個有效數字。
浮點型定義的兩種方式:
$f=1.23;
$f=1.23e10; //科學計數法,其中e表示
示例:
$f1=1.23;
$f2=1.23e10;
var_dump($f1,$f2);
輸出如下:
整型超過自身儲存的大小會用浮點型儲存:
$f3=php_int_max+1;
var_dump($f3);
輸出結果如下:
同樣位元組數浮點型卻能表示更大資料的原因簡單說明:
00000000 00000000 00000000 00000000->11111111 11111111 11111111 11111111(整型最大值:所有位都是有效資料)
浮點數:第2-8位(紅色數字)算的結果是10的指數,後面三個位元組儲存表示具體數值
00000000 00000000 00000000 00000000->11111111 11111111 11111111 11111111
注:盡量不要使用浮點數做精確判斷:浮點數儲存的資料不夠精確,而且在計算機中凡是小數基本上存的都不準確。
示例;浮點數判斷:
$f4=0.7;
$f5=2.1;
$f6=$f5/3;
var_dump($f4==$f6)
輸出結果顯示兩者不相等。
布林型別:
布林型別有兩個值:
true與false,通常用於判斷比較
定義:
$b1=true;
$b2=false;
var_dump($b1,$b2);
輸出結果如下:
bool(true) bool(false)注意:
在進行某些資料判斷時,需要特別注意型別轉換。
下面講解兩個函式的使用:
empty():判斷資料的值是否為「空」(「空」不為null),如果為空返回true,不為空返回false
isset():判斷資料儲存的變數本身是否存在,存在變數返回true,不存在返回false
php 浮點數運算
php r echo 0.1 0.7 0.8 true false 了解浮點運算的都不難理解以上 執行時會得到false 這是因為很多的10進製數都不能精確的轉成2進製,或如果要精確轉換的話需要的二進位制數太長,會捨棄掉末尾部分,只儲存一定的精度。比如0.1 十進位制 0.0001100 1100 ...
PHP 浮點數操作
f 3.14159 使用sprintf對浮點數小數點後三位四捨五入 f new sprintf 3f f echo 3.14159小數點後三位四捨五入 f new.f round round f,3 echo 3.14159小數點後三位四捨五入 round函式 f round.進一法取浮點數的整數 ...
php比較浮點數
php手冊中有一句話,永遠不要比較兩個浮點數是否相等,但是在實際情況中,有時候還是會涉及到關於浮點數的運算和比較,當出現這種情況下,請使用bc math擴充套件函式或者gmp 函式。我們來看一種常見的情況 a 1.3 b 1.2 c 0.1 d a b if d c else printf 20f ...