PHP基礎(chǔ)知識詳細(xì)講解
一、簡介
基礎(chǔ)知識:
需要一定的html和css的語法知識
基本概念:
PHP(超文本預(yù)處理器)是一種通用開源腳本語言,在服務(wù)器上執(zhí)行。
PHP文件:
- PHP 文件可包含文本、HTML、JavaScript代碼和 PHP 代碼
- PHP 代碼在服務(wù)器上執(zhí)行,結(jié)果以純 HTML 形式返回給瀏覽器
- PHP 文件的默認(rèn)文件擴展名是 ".php"
二、php基本語法
<?php #單行注釋1 // 單行注釋2 /** 多行注釋3 */ echo "<h1>hello world</h1>"; $name="coleak"; $mes="hello"; echo $mes." ".$name; echo "<br>"; echo "my name is $name"; echo "<br>"; echo 'my name is $name'; echo "<br>"; var_dump($name); // 調(diào)試函數(shù),沒有返回值 ?>

三、變量和作用域

<?php
function fun()
{
$y=0;//局部變量
echo "y的值為: $y";
echo "<br>";
echo "x的值為: $x";
}
$x=1;//全局變量
fun();
echo "<br>";
echo "y:$y";
echo "<br>";
echo "x:$x";
?>
分析:此時函數(shù)內(nèi)不能訪問全局變量,需要使用globar $x; 函數(shù)外不能訪問局部變量。
<?php
function fun()
{
static $y=0;//靜態(tài)變量
echo "y的值為: $y";
echo "<br>";
$y++;
}
fun();
fun();
fun();
fun();
?>
四、常量

<?php
// 被替代的寫法
define("mess","hello");
echo mess;
// 新寫法
const name ='coleak';
echo name;
function fun()
{
echo name;
}
fun();
?>五、數(shù)據(jù)類型

布爾類型

<?php
$a=true;
$b=False;
if(is_bool($a))
if(is_bool($b))
echo 1;
?>此時輸出為1,不區(qū)分大小寫的弱語言
heredoc和nowdoc
<?php
$a=true;
$b=False;
if(is_bool($a))
if(is_bool($b))
echo 1;
?>
<?php
$name="coleak";
$message=<<<'EOT'
hello $name
EOT;
echo $message;
?>上面輸出為hello coleak,下面輸出為hello $name
數(shù)組
<?php
$a1=array('12',"12",12);
$a2=[1,2,3,4];
$a3=[
"hh"=>6,
5=>'coleak'
];
var_dump($a1);
echo "<br>";
var_dump($a2);
echo "<br>";
var_dump($a3);
echo "<br>";
unset($a3['hh']);
var_dump($a3);
?>array(3) { [0]=> string(2) "12" [1]=> string(2) "12" [2]=> int(12) }
array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) }
array(2) { ["hh"]=> int(6) [5]=> string(6) "coleak" }
array(1) { [5]=> string(6) "coleak" }
對象
<?php
class person
{
var $count=1;
function func()
{
echo $this->count;
}
}
$per1=new person();
echo $per1->count;//后面的count前面不用加$號
echo "<br>";
$per1->func();
?>此時輸出為兩個1
null
<?php
$a=1;
$b=2;
function fun()
{
echo $a+$b;
echo "<br>";
var_dump($a);
echo "<br>";
var_dump($b);
echo "<br>";
}
fun();
var_dump($a);
echo "<br>";
var_dump($b);
echo "<br>";
?>0
NULL
NULL
int(1)
int(2)
<?php $a=10; unset($a); var_dump($a+1); echo $a+2; echo "<br>"; var_dump($b+3); echo $b+4; ?>
2
4
六、運算符
字符串運算符
<?php $a="hello"; $b=$a."world"; $a.="world"; echo $b,"<br>"; echo $a; ?>
helloworld
helloworld
比較運算符

注意:當(dāng)字符串遇到數(shù)字內(nèi)容的比較時,如果不是使用絕對比較符,則會轉(zhuǎn)化為對應(yīng)的數(shù)字進(jìn)行比較。
邏輯運算符

數(shù)組運算符

<?php $a=[ "a"=>"aa", "b"=>"bb" ]; $b=[ "a"=>"aaa", "c"=>"cc" ]; $c=$a+$b; var_dump($c); ?>
array(3) { ["a"]=> string(2) "aa" ["b"]=> string(2) "bb" ["c"]=> string(2) "cc" }
由此可以看出+時并沒有覆蓋重復(fù)的鍵。
三元操作符
<?php // 寫法一(老舊) $a="coleak"; $name=$a?$a:"nobody"; echo $name; // 新寫法 $name2=$a?:'nobody'; echo "<br>",$name2; ?>
coleak
coleak
七、流程控制


<?php
$x=[1,2,3,4,5];
foreach ($x as $val)
{
echo $val."<br>";
}
?>1
2
3
4
5
八、超全局變量

<?php
$a=10;
$b=20;
function add()
{
$GLOBALS['z']=$GLOBALS["a"]+$GLOBALS['b'];
}
add();
echo $z;
?>30
POST方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form method="post" action="index.php">
<p>my_add</p>
<input type="text" name="add1">
<br>
<input type="text" name="add2">
<br>
<input type="submit" value="提交">
</form>
</body>
</html><?php $add1=$_REQUEST["add1"];//也可以用$_POST $add2=$_REQUEST["add2"];//也可以用$_POST $add=$add1+$add2; echo $add; ?>

333
GET方式(不安全)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form method="get" action="index.php">
<p>Name:<input type="text" name="fname"></p>
<p>Password:<input type="password" name="passw"></p>
<p><input type="submit" value="提交"></p>
</form>
</body>
</html><?php $fname=$_GET["fname"]; $password=$_GET["passw"]; $message=<<<ETO 用戶名稱 $fname 用戶密碼 $password ETO; echo $message; ?>


到此這篇關(guān)于PHP基礎(chǔ)知識詳細(xì)講解的文章就介紹到這了,更多相關(guān)PHP基礎(chǔ)知識內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
自寫的利用PDO對mysql數(shù)據(jù)庫增刪改查操作類
這篇文章主要給大家介紹了關(guān)于自寫的利用PDO對mysql數(shù)據(jù)庫的增刪改查操作類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-02-02
PHP實現(xiàn)深度優(yōu)先搜索算法(DFS,Depth First Search)詳解
這篇文章主要介紹了PHP實現(xiàn)深度優(yōu)先搜索算法(DFS,Depth First Search),簡單分析了深度優(yōu)先搜索算法的原理并結(jié)合具體實例給出了php實現(xiàn)深度優(yōu)先搜索的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-09-09

