php基礎入門知識
導語:php入門必須先了解一些最基礎的知識,下面就由小編為大家介紹一下php基礎入門知識,歡迎大家閱讀!
一、數(shù)據(jù)類型:字符串、整數(shù)、浮點數(shù)、邏輯、數(shù)組、對象、NULL
var_dump -- 打印變量的相關信息
1、字符串:字符串是字符序列,雙引號單引號都可以。
(1)字符串函數(shù)
①strlen()函數(shù) 返回字符串長度
echostrlen("1234"); //4
②strpos()函數(shù) 檢索字符串 如果沒有找到則返回false("")
echo strpos("Helloworld!","world"); //6
(2)PHP 字符串運算符: . 串接 .=串接賦值(就跟x+=2一樣)
遞增/遞減運算符: 和c語言一樣
PHP 比較運算符:
=== 全等(完全相同) $x=== $y 如果 $x 等于 $y,且它們類型相同,則返回 true。
!== 不全等(完全不同) $x !==$y 如果 $x 不等于 $y,或它們類型不相同,則返回 true。
PHP 邏輯運算符:
與:and &&
或:or ||
異或:xor $x xor $y 如果 $x 和 $y 有且僅有一個為 true,則返回 true。
非:!
2、整數(shù):整數(shù)必須有至少一個數(shù)字(0~9),整數(shù)不能包含逗號火空格,整數(shù)不能有小數(shù)點,整數(shù)正負均可
可以用三種格式規(guī)定整數(shù):十進制、十六進制(前綴是:0x)、八進制(前綴是:0)
3、浮點數(shù):小數(shù) $x =2.4e3; 2400
4、邏輯:就是bool類型:true、false
5、數(shù)組:在一個變量中存儲多個值
(1)在 PHP 中,有三種數(shù)組類型:
1)索引數(shù)組 - 帶有數(shù)字索引的數(shù)組count() 函數(shù)用于返回數(shù)組的長度(元素數(shù)):
$cars=array("Volvo","BMW","SAAB");
echo"I like " . $cars[0] . ", " . $cars[1] . " and ". $cars[2] . ".";
count($cars); //3
//遍歷數(shù)組
$arrlength=count($cars);
for($x=0;$x<$arrlength;$x++){
echo $cars[$x];
echo " ";
}
2)關聯(lián)數(shù)組 - 帶有指定鍵的數(shù)組
兩種創(chuàng)建關聯(lián)的方法:
①$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
②
$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43";
//遍歷數(shù)組:其實和js中的foreach很像,只是在as后邊對照著""=>""這樣的結構添加了變量而已,再拿出來用就好了
$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");
foreach($ageas $xx=>$x_values){
echo "key=" . $xx.",value=".$x_values." ";
}
3)多維數(shù)組 - 包含一個或多個數(shù)組的數(shù)組
(2)數(shù)組排序:數(shù)組中的元素能夠以字母或數(shù)字順序進行升序或降序排序。(這里的排序直接就把數(shù)據(jù)的內容就改變了)
(索引數(shù)組)
sort() - 以升序對數(shù)組排序
rsort() - 以降序對數(shù)組排序
(關聯(lián)數(shù)組)
asort() - 根據(jù)值,以升序對關聯(lián)數(shù)組進行排序
ksort() - 根據(jù)鍵,以升序對關聯(lián)數(shù)組進行排序
arsort() - 根據(jù)值,以降序對關聯(lián)數(shù)組進行排序
krsort() - 根據(jù)鍵,以降序對關聯(lián)數(shù)組進行排序
(3)數(shù)組運算符
運算符 名稱 例子 結果
+ 聯(lián)合 $x + $y $x和$y 的聯(lián)合(但不覆蓋重復的鍵)
== 相等 $x == $y 如果 $x 和 $y 擁有相同的鍵/值對,則返回 true。
=== 全等 $x === $y 如果 $x 和 $y 擁有相同的鍵/值對,且順序相同類型相同,則返回 true。
!= 不相等 $x!= $y 如果 $x 不等于 $y,則返回 true。
<> 不相等 $x<> $y 如果 $x 不等于 $y,則返回 true。
!== 不全等 $x!== $y 如果 $x 與 $y 完全不同,則返回 true。
6、對象:對象是存儲數(shù)據(jù)和有關如何處理數(shù)據(jù)的信息的數(shù)據(jù)類型
在php中,必須明確地生命對象。
首先必須聲明對象的類,試用class關鍵詞。類是包含屬性和方法的結構
然后再對象類中定義數(shù)據(jù)類型,然后在該類的實例中使用此數(shù)據(jù)類型
classCar
{
var $color;
function Car($color ="green"){
$this->color = $color;
}
function what_color(){
return $this->color;
}
}
functionprint_vars($obj) {
foreach (get_object_vars($obj) as $prop=> $val) {
echo " $prop = $val ";
}
}
//instantiate one object
$herbie= new Car("whites");
//show herbie properties
echo"herbie: Properties ";
print_vars($herbie);
7、NULL值: 特殊的 NULL 值表示變量無值。NULL 是數(shù)據(jù)類型 NULL 唯一可能的值。可以通過把值設置為 NULL,將變量清空
二、常量:常量是單個值的標識符(名稱)。在腳本中無法改變該值。
有效的常量名以字符或下劃線開頭(常量名稱前面沒有 $ 符號)。
注釋:與變量不同,常量貫穿整個腳本是自動全局的。
如需設置常量,請使用 define() 函數(shù) - 它使用三個參數(shù):
首個參數(shù)定義常量的名稱
第二個參數(shù)定義常量的值
可選的第三個參數(shù)規(guī)定常量名是否對大小寫不敏感。默認是 false:大小寫敏感,true:大小寫不敏感。
define("corlor","yellor");
echocorlor; //yellor
echoCorlor; //Corlor
define("corlor","yellor",true);
echocorlor; //yellor
echoCorlor; //yellor
三、運算符:
$x=10;
$y=6;
echo($x + $y)," "; // 輸出 16
echo($x - $y)," "; // 輸出 4
echo($x * $y)," "; // 輸出 60
echo($x / $y)," "; // 輸出 1.6666666666667
echo$x % $y," "; // 輸出 4
?>
四、條件語句:
if(){}
if(){}else{}
if(){}elseif(){}else{} //不一樣的地方else和if可以拼接起來,分開也是可以的
switch($x)
{
case1:echo"1";break;
case2:echo"2";break;
default:echo"no";
}
五、循環(huán):
while- 只要指定條件為真,則循環(huán)代碼塊
while(條件為真){
}
do...while- 先執(zhí)行一次代碼塊,然后只要指定條件為真則重復循環(huán)
do{
要執(zhí)行的代碼;
}while (條件為真);
for- 循環(huán)代碼塊指定次數(shù)
for($x=0; $x<=10; $x++) {
echo "數(shù)字是:$x
";
}
foreach- 遍歷數(shù)組中的每個元素并循環(huán)代碼塊(只適用于數(shù)組)
$colors= array("1","2","3");
foreach($colors as $value) {
echo "$value ";
}
六、函數(shù):函數(shù)名對大小寫不敏感,所傳的參數(shù)對大小寫還是很敏感的
語法:
functionfunctionName($A,$B){
}
默認參數(shù)設置:如果不傳參數(shù)的話,就會取默認參數(shù),但是沒有默認參數(shù)的時候,就必須傳參,否則會報錯
functionfamilyName($fname="兒子",$name="孫子") {
echo "$fname $name Zhang ";
}
familyName("Li","maozi");
familyName("Li");
familyName();
?>
返回:
Li maozi Zhang
Li 孫子 Zhang
兒子 孫子 Zhang
有返回值的函數(shù)
functionsum($x,$y) {
$z=$x+$y;
return $z;
}
七、PHP 全局變量 - 超全局變量
PHP 中的許多預定義變量都是“超全局的”,這意味著它們在一個腳本的全部作用域中都可用。在函數(shù)或方法中無需執(zhí)行 global $variable; 就可以訪問它們。
這些超全局變量是:
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
1、$GLOBALS— 引用全局作用域中可用的全部變量
$GLOBALS 這種全局變量用于在 PHP 腳本中的任意位置訪問全局變量(從函數(shù)或方法中均可)。
PHP 在名為 $GLOBALS[index] 的數(shù)組中存儲了所有全局變量。變量的名字就是數(shù)組的鍵。
下面的例子展示了如何使用超級全局變量 $GLOBALS:
$x= 75;
$y= 25;
functionaddition() {
$GLOBALS['z'] = $GLOBALS['x'] +$GLOBALS['y'];
}
addition();
echo$z;
?>
由于 z 是 $GLOBALS 數(shù)組中的變量,因此在函數(shù)之外也可以訪問它。
2.PHP$_SERVER
$_SERVER 這種超全局變量保存關于報頭、路徑和腳本位置的信息。
下面的例子展示了如何使用 $_SERVER 中的某些元素:
訪問元素眾多:http://www.w3school.com.cn/php/php_superglobals.asp
3.PHP$_REQUEST 用于收集 HTML 表單提交的數(shù)據(jù)。
表單數(shù)據(jù)將發(fā)送到
標簽的 action 屬性中指定的腳本文件。如果您需要使用其他的 PHP 文件來處理表單數(shù)據(jù),請修改為您選擇的文件名即可。然后,我們可以使用超級全局變量 $_REQUEST 來收集 input 字段的值
Name:
$name= $_REQUEST['fname'];
echo$name;
?>
4.PHP$_POST
PHP $_POST 廣泛用于收集提交 method="post" 的 HTML 表單后的表單數(shù)據(jù)。$_POST 也常用于傳遞變量。
下面的例子展示了一個包含輸入字段和提交按鈕的表單。當用戶點擊提交按鈕來提交數(shù)據(jù)后,表單數(shù)據(jù)會發(fā)送到
標簽的 action 屬性中指定的文件。在本例中,我們指定文件本身來處理表單數(shù)據(jù)。如果您希望使用另一個 PHP 頁面來處理表單數(shù)據(jù),請用更改為您選擇的文件名。然后,我們可以使用超全局變量 $_POST 來收集輸入字段的值:
Name:
$name= $_POST['fname'];
echo$name;
?>
5.PHP$_GET
PHP $_GET 也可用于收集提交 HTML 表單 (method="get") 之后的表單數(shù)據(jù)。
$_GET 也可以收集 URL 中的發(fā)送的數(shù)據(jù)。
測試 $GET
當用戶點擊鏈接 "Test $GET",參數(shù) "subject" 和 "web" 被發(fā)送到 "test_get.php",然后您就能夠通過 $_GET 在 "test_get.php" 中訪問這些值了。
下面的例子是 "test_get.php" 中的代碼
echo"Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
【php基礎入門知識】相關文章:
PHP基礎入門09-30
php語言基礎入門08-22
PHP初學者入門基礎知識09-13
PHP語法入門知識10-01
php入門小知識06-16
PHP學習入門的一些基礎知識05-23
php編程語言入門知識05-22
php基礎知識08-31
PHP中的類與對象入門知識09-05