php基本語法
阿新 • • 發佈:2021-11-11
php基本語法
php指令碼在伺服器上執行,然後將純HTML結果傳送回瀏覽器
基本語法
- 開頭和結尾
<?php
?>
- 檔案的副檔名為.php
- 每行程式碼必須以分號為結束
php輸出
- echo 和 print , 可以包含HTML標籤
echo : 可以輸出一個或多個字串
print : 只允許輸出一個字串 , 返回值總為1
$a=1; $str="Hello"; #這種輸出變數後一定要加空格,否則會報錯 echo "$str World!$a <br>"; #==這種則不必加空格 echo "{$str} World!{$a} <br>"; #多個字串 ,使用 , $str2="I love php!"; echo "This"," is"," my first"," php process.",$str2,"<br>"; #連線多個字串,使用 . echo $str.$str2." ".$a;
php註釋
- 單行 // 或者 #
- 多行 /* */
- 文件註釋 /** */
#不輸出
//不輸出
/*
不輸出
*/
/**
* 不輸出
*/
php變數
- 定義變數 : $變數名 = 變數值
$a = 1;
echo $a;
$b = 2;
$c = 3;
echo $b;
echo $c;
注意事項 :
- 要以$作為表示
- 以字母或者下劃線開頭
- 變數名只能由字母,數字,以及下劃線組成
- 不能包含空格,用下劃線隔開
- 變數名區分大小寫
- 關鍵字不能作為變數名
php變數作用域
php 三種不同的變數作用域
- local(區域性)
- global(全域性)
- static(靜態)
local 和 global
- 函式之外宣告的變數擁有 global 作用域 , 只能在函式以外進行訪問
- 函式之內宣告的變數擁有 local 作用域 , 只能在函式內部進行訪問
**例子 : **
$a=100; function demoTest(){ $b=50; echo "<p>函式內部測試</p>"; echo "變數a=".$a."<br>"; echo "變數b=".$b; } demoTest(); echo "<p>函式外部測試</p>"; echo "變數a=".$a,"<br>"; echo "變數b=".$b; /* *函式內部測試 *變數a= *變數b=50 *函式外部測試 *變數a=100 *變數b= */ #外部只能訪問外部 , 內部只能訪問內部
使用 global 關鍵字訪問全域性變數 或者 使用$GLOBALS['變數名'] , 該陣列儲存了所有的全域性變數 , 內外皆可訪問
$x=100;
$y=50;
$t=0;
function Test(){
global $x,$y;
$y+=$x;
$GLOBALS['t']=$GLOBALS['x']+$GLOBALS['y'];
}
Test();
echo $y; //150
echo "<br>".$t; //=100+150
static
static修飾的變數在呼叫函式執行後還會保留 , 但仍然是區域性變數
function Test(){
static $x=0;
echo $x."<br>";
$x++;
}
Test(); //0
Test(); //1
Test(); //2
Test(); //3
php資料型別
php是一種弱型別語言 , 不必說明資料型別
四大標量型別
- 字串
- 整數 ( 三種 :十進位制、十六進位制、八進位制 ) 類似Java , 小寫
- 浮點數
- 布林型(只有true和false兩個值)
$x=10;
$y=0xABCDE;
$m=07777;
//var_dump 返回資料型別和值
var_dump($x); //int(10)
$n=10.5;
var_dump($n); // float(10.5)
$flag=true;
var_dump($flag); //bool(true)
其他
-
陣列
-
物件
-
null
把值設為null , 將變數清空
php運算子
算術運算子
+,-,*,/,%
賦值運算子
=,+=,-=,*=,/=,%=
字串運算子
$str1="Hello";
echo $str1." World!"; //Hello World!
echo "<br>";
$str1.=" World!";
echo $str1; //Hello World!
- . 串接 相當於Java字串加法+
- .= 串接賦值 相當於+=
遞增/遞減運算子
- $x++ , ++$x
- $x-- , --$x
比較運算子
==,!=,>,<,<=,>=
擴充套件 :
- =全等(完全相同) , $x$y並且型別相等返回true
- <>不等於
- !===不全等(完全不等),如果$x不等於$y,或型別不同,返回true
$x=5;
$y=5;
$z="5";
var_dump($x===$y); //true
echo "<br>";
var_dump ($x!==$z); //true
邏輯運算子
&& and , || or , !
xor(異或) $x和$y 中有且僅有一個為true, 返回true
陣列運算子
用於比較陣列
+聯合 , ==相等 , =全等(順序相同) , !=不等於 , <>不等於 , !不全等(完全不同)
php常量
無法改變的值,常量是自動全域性的
使用 define()函式
三個引數 :
- 常量的名稱
- 常量的值
- 規定常量名對大小寫是否敏感,預設不寫是false
define("GOOGLE","I'm google.");
echo GOOGLE;
echo "<br>";
define("MICRO","I'm Microsoft");
function Test(){
echo MICRO;
}
Test();
echo "<br>";
echo MICRO;
php字串函式
常用的字串操作函式
- php strlen()函式
返回字串的長度 =Java : str.length();
- php str_word_count()
對字串中的單詞進行計數
- php strrev()
反轉字串
- php strpos()
用於檢索字串內指定的字元或文字
如果找到,則會返回首個匹配的字元位置 , 如果未找到 , 則返回false
- php str_replace()
用一些字串替換字串中的另一些字元
三個引數 : 1.查詢的值 2.替換的值 3.搜尋的字串
$str="this is php";
echo strlen($str)."<br>"; //11
echo str_word_count($str),"<br>"; //3
echo strrev($str)."<br>";
echo strpos($str,"is"); //2,首次出現 is 的是索引2處
echo "<br>";
echo str_replace("php","Java",$str); //this is Java