php流程控制替代語法 浮點數 布林值介紹

2021-10-06 04:51:43 字數 2083 閱讀 9422

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 ...