日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

【CyberSecurityLearning 45】PHP基础+变量、运算符、流程控制语句

發布時間:2025/3/15 php 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【CyberSecurityLearning 45】PHP基础+变量、运算符、流程控制语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

PHP概述

PHP運行環境安裝

Web原理簡述

PHP 基本語法

特點:

指令分隔符 [;]

注釋(和C語言類似)

簡單的PHP語句

PHP語法錯誤:

變量

變量的聲明

初始化

賦值

[=] ?

引用賦值 $c =&$a

變量的釋放

變量的命名

可變變量

變量的類型

常量

預定義常量

運算符

算術運算符(見代碼)

邏輯運算符

運算符優先級

比較運算符

賦值運算符

算術賦值運算符??

其他賦值運算符??

其他運算符

流程控制語句

順序執行

分支執行

單向分支

雙向分支

多向分支

循環語句

while

do while

for(好!)

特殊流程控制語句

九九乘法表


PHP概述

- PHP是一門編程語言,PHP主要目的是允許網絡開發人員快速編寫動態頁面
- 簡單來說PHP主要被用于開發各種類型的網站程序
- 細化點說PHP可以用于收集表單數據,生成動態網頁,字符串處理,動態輸出圖像,處理服務端文件,與數據庫交互,會話跟蹤,處理XML文件,支持大量的網絡協議,服務器端的其他相關操作!
- PHP是解釋型腳本語言不需要事先編譯,運行在服務器端
- PHP可以運行在windows、linux等各種操作系統上!

專門用于開發網站的
腳本后綴名.php 可以與HTML語言進行混編,腳本后綴依然是.php(還可以在PHP代碼中輸出HTML語言)
解釋型語言,不要編譯直接運行

弱類型

PHP運行需要環境:
Windows: phpstudy
Linux: 單獨安裝(不是系統自帶的)

PHP運行環境安裝

Apache+PHP+MySQL是PHP比較流行的生存環境

LAMP

Web原理簡述

1.打開瀏覽器
2.輸入URL地址
3.顯示網站內容

PHP 基本語法

PHP 語言標記

? ? ? 開始標記 <?php

? ? ? 結束標記? ?>

特點:

1、<?php?>這之間就表示進入PHP模式,在開始和結束處之外的內容都會被PHP解析器忽略

2、可以直接嵌入到html代碼中,并且可以嵌入到html代碼中的任何地方

3、在一個html文檔中可以嵌入任意多個PHP標記

4、文件末尾的PHP代碼結束標記可以不要,在一些情況下省略掉更好

指令分隔符 [;]

一個php語句必須(建議)要用分號結束

注釋(和C語言類似)

單行注釋 //

多行注釋 /*? */

注意:

php代碼中注釋,不會顯示在瀏覽器的源代碼中。

php運行環境是服務器,我們瀏覽器看到的是PHP引擎運行PHP代碼后的執行結果

在我們PHP引擎解釋PHP代碼的時候,注釋被自動過濾掉了。
為什么HTML代碼客戶端可以看到源代碼?
因為HTML運行環境是瀏覽器!

簡單的PHP語句

1、phpinfo();

2、echo 用于輸出簡單的變量

3、var_dump(); 用于輸出變量值及其變量類型

PHP語法錯誤:

Error???????????? 會結束腳本執行
Warning??????? 只提示,不影響執行
Notice?????????? 只提示,不影響執行

變量

變量的聲明

不需要聲明變量,但要初始化

初始化

給變量初次賦值,或者變量的默認值

賦值

[=] ?

根據實驗說明:PHP腳本是順序執行的

引用賦值 $c =&$a

相當于給$a起了一個別名,$c值的改變,$a也隨之改變

<?php $a=10; $b=$a; $b=$b+1; echo $a; //10 echo "|"; echo $b; //11 echo "<hr />"; $c=&$a; //$a和$c實際上指向的是同一塊內存空間(相當于給$a起了一個別名) $c=$c+1; echo $a; //11 echo "|"; echo $c; //11 ?>

變量的釋放

unset()

<?php echo "This is var.php"; echo "<hr />"; echo "<span style='color:pink;background-color:blue'>123</span>"; ?>//一個頁面中可以插入多個PHP標記(不能混用) <hr /><?php //PHP在使用變量的時候不需要進行變量聲明, //如果一個變量沒有初始化,內存中就沒有這個變量。 echo $name; $name="AJEST"; echo "<br />"; echo $name; echo "<br />"; unset($name); //釋放了變量 echo $name;?>

?

變量的命名

? ?@? 以$符號開頭

? ?@? 嚴格區分大小寫

? ?@? 字母|數字|下劃線,不能以數字開頭

$name1
$my_name
$_my_name
$1_name?? 錯誤

? ?@? 盡量不要使用php關鍵字作為變量名

可變變量

<?php $name="hello"; $$name="world"; echo $name; //輸出hello echo "<br />" echo $$name; //world echo $hello;//實際上$hello是$$name ?>

?

變量的類型

布爾類型?
true false,其他均會被認為true

以下所有內容會被當做false

布爾值false
0
浮點型0.0
空白字符串和字符串0
沒有成員的數組
NULL

var_dump(); 用于輸出變量值及其變量類型

int? 存儲整數

float 存儲小數 3.14

字符串 string

字符串的定義:

@??? '? '

@??? " "

@?? 定界符

注意:

@單引號定義的字符串中出現單引號要轉義[\]

@單引號定義的字符串中,[$] 符號原樣輸出

@雙引號定義的字符串中,[$] 是變量的開始,整體變量名用{ }括起來

@單雙引號定義的字符串中輸入的特殊字符包括 [ ' , " , $ ...]需要轉義

@定界符開始和結束后面不能有任何字符包括空白字符和注釋

數組

對象 不講

?

常量

不變的量

定義?? define("NAME","GGG");

直接使用即可

預定義常量

常量名????????????????????????????????????? 常量值
__FILE__?????????????????????????????? ? 當前的文件名(文件名帶路徑)
__LINE__?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 當前的行數
__FUNCTION__??????????????????? ? 當前的函數名
__CLASS__?????????????????????????? ? 當前的類名
__METHOD__????????????????????? ?? 當前的對象的方法名
PHP_OS??????????????????????????????? ? UNIX或WINNT等
PHP_VERSION???????????????????? ? 當前的PHP服務器的版本
DIRECTORY_SEPARATOR???? \或/ ?? 根據操作系統決定目錄的分隔符

?

運算符

算術運算符(見代碼)

取模就是取余數。

邏輯運算符

php手冊

非??????????? !

與??????????? and 或者 &&

或??????????? or ||

異或???????? xor 不同為真,相同為假

與運算的優先級高于或運算

賦值運算符的優先級高于邏輯運算符

運算符優先級

括號的使用,哪怕在不是必要的場合下,通過括號的配對來明確標明運算順序,而非靠運算符優先級和結合性來決定,通常能夠增加代碼的可讀性。
下表按照優先級從高到低列出了運算符。同一行中的運算符具有相同優先級,此時它們的結合方向決定求值順序。

運算符優先級結合方向運算符附加信息
不適用clone?newclone?和?new
**算術運算符
不適用++?--?~?(int)?(float)?(string)?(array)?(object)?(bool)?@類型、遞增/遞減
instanceof類型
不適用!邏輯運算符
*?/?%算術運算符
+?-?.算術運算符?和?字符串運算符
<<?>>位運算符
<?<=?>?>=比較運算符
==?!=?===?!==?<>?<=>比較運算符
&位運算符?和?引用
^位運算符
|位運算符
&&邏輯運算符
||邏輯運算符
??null 合并運算符
? :三元運算符
=?+=?-=?*=?**=?/=?.=?%=?&=?|=?^=?<<=?>>=???=賦值運算符
不適用yield fromyield from
不適用yieldyield
不適用printprint
and邏輯運算符
xor邏輯運算符
or邏輯運算符

?

比較運算符

比較運算符例子名稱結果
$a == $b等于true,如果類型轉換后?$a?等于?$b。
$a === $b全等true,如果?$a?等于?$b,并且它們的類型也相同。
$a != $b不等true,如果類型轉換后?$a?不等于?$b。
$a <> $b不等true,如果類型轉換后?$a?不等于?$b。
$a !== $b不全等true,如果?$a?不等于?$b,或者它們的類型不同。
$a < $b小與true,如果?$a?嚴格小于?$b。
$a > $b大于true,如果?$a?嚴格大于?$b。
$a <= $b小于等于true,如果?$a?小于或者等于?$b。
$a >= $b大于等于true,如果?$a?大于或者等于?$b。
$a <=> $b太空船運算符(組合比較符)當$a小于、等于、大于?$b時 分別返回一個小于、等于、大于0的?int?值。

當兩個操作對象都是?數字字符串, 或一個是數字另一個是?數字字符串, 就會自動按照數值進行比較。 此規則也適用于?switch?語句。 當比較時用的是?===?或?!==, 則不會進行類型轉換——因為不僅要對比數值,還要對比類型。

比較參與運算的單元是否相同,相同為真,不同為假

<?php var_dump(0 == "a"); // 0 == 0 -> true var_dump("1" == "01"); // 1 == 1 -> true var_dump("10" == "1e1"); // 10 == 10 -> true var_dump(100 == "1e2"); // 100 == 100 -> trueswitch ("a") { case 0:echo "0";break; case "a": // never reached because "a" is already matched with 0echo "a";break; } ?>

賦值運算符

算術賦值運算符??

例子等同于操作
$a += $b$a = $a + $b加法
$a -= $b$a = $a - $b減法
$a *= $b$a = $a * $b乘法
$a /= $b$a = $a / $b除法
$a %= $b$a = $a % $b取模
$a **= $b$a = $a ** $b指數

其他賦值運算符??

例子等同于操作
$a .= $b$a = $a . $b字符串拼接

?

其他運算符

$a= 10>20 ? 10:20(三元運算符)

``? ? 將字符串當作命令執行(不是單引號,是Tab上面的那個鍵)

@? ?屏蔽提示,警告

<?php $a=10<20?10:20; echo $a; echo "<hr />"; echo `ping www.baidu.com`; ?><hr /><?php echo `whoami`; echo "<hr />"; echo @$name; //直接寫$name會報Notice,在前面加一個@,屏蔽警告、提示 ?>

流程控制語句

順序執行

PHP代碼執行的時候,依次順序執行

分支執行

單向分支

if(判斷條件){執行語句塊}

雙向分支

if(判斷條件){執行語句塊1}else{語句塊2}

多向分支

if(判斷條件){執行語句塊1}elseif{語句塊2}elseif{語句塊3}....

elseif

??? switch

?????? case

?????? default

case后面的語句是不需要用大括號括起來的!

循環語句

while

? ?當滿足條件時,執行

? ?計數器,變量

? ?判斷條件

do while

? ? 先執行再判斷

for(好!)

特殊流程控制語句

break;? 跳出本層循環

break 2;? 跳出兩層循環

continue; 跳過本次循環

die()??? 結束本次腳本執行

exit()?? 結束本次腳本執行

九九乘法表

?

總結

以上是生活随笔為你收集整理的【CyberSecurityLearning 45】PHP基础+变量、运算符、流程控制语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。