第二課
LAMP:
Linux
apache
ngix
PHP
第三課
搭建伺服器方式:
1.整合安裝環境
XAMPP軟體包:www.apachefriends.org
2.單獨配置
第四課
XAMPP
包含了運行網站的幾個必須的套件
1.apache伺服器
2.PHP解譯器
3.Mysql資料庫
apache:
path:xampp的安裝目錄
目錄:path/xampp/apache
mysql:
目錄:path/xampp/mysql
PHP:
目錄:path/xampp/php
1.XAMPP的啟動
2.XAMPP的退出
3.apache的啟動和關閉
4.mysql的啟動和關閉
5.修改apache的預設連接埠
1.通過xampp的面板
2.通過更改設定檔
第五課
PHP程式編寫規則:
1.編寫的PHP檔案,以php作為尾碼
2.PHP代碼必須凡在之間
3.在PHP中,每條語句必須以分號結束(最後一行語句可以不要)
書寫規則
2.如何布置我們的PHP代碼
1.將PHP代碼布置到apache伺服器中指定的一個目錄,在xampp這個
整合軟體的目錄是:path/xampp/htdocs這個目錄下
通常我們一個網站有多個網頁,而為了更好的管理多個網頁,我們通常
使用檔案夾進行歸類
檔案夾名:bdqn_php_basic(工程名可以自訂)
path指的是xampp的安裝目錄
注意:
1.程式部署的目錄是由apache的設定檔定義的
設定檔:apache/conf/httpd.conf
配置的選項:DocumentRoot"D:/xampp_2/htdocs"
DocumentRoot "D:/xampp/htdocs"
通過http://localhost:80/bdqn_php_basic/first_php.php 進行我們第一個網頁的訪問
第六講:PHP網站啟動並執行基本原理
1.我們建立了一個first_php.php的檔案,並且在檔案裡面寫了一行PHP代碼
2.我們把這個first_php.php這個檔案部署到了xampp apache伺服器之中
部署地址:apache設定檔httpd.conf中DocumentRoot指定目錄中
3.在瀏覽中去訪問
瀏覽器和伺服器的關係
B端 S端
http://localhost:80/bdqn_php_basic/first_php.php 請求-------------------> http協議
HTTP:超文字傳輸通訊協定 (HTTP)
用戶端通過URL(統一資源定位器)(網址)找到伺服器的
網址在HTTP協議中被稱為URL
URL解析:
http://www.baidu.com
(伺服器的Internet地址,即網域名稱)
http://localhost:80/bdqn_php_basic/first_php.php
第三方存在如下一張表
網域名稱 IP
baidu.com 212.21.8.4(一台電腦在互連網上的唯一IP地址)
完整的URL,應該包含連接埠,http協議預設連接埠是80連接埠
查看對應連接埠是否有相應的服務
作用:確保http用戶端和http伺服器之間,準確無誤的傳遞資料
第七課
第二章 PHP變數和資料類型
2.1 課程 PHP基礎文法
什麼是文法
語:語言 人類語言,早於電腦語言的出現
其實文法,在開始的時候,是用來定義人類語言的
PHP基本文法:
1.PHP的代碼,位於和?>之間
2.PHP語言可以嵌入到HTML代碼中
3.PHP的指令分隔字元; PHP需要在每個指令的後面使用分號結束
java,php,C語言,語句都分成兩種:
1.流程式控制制語句:
if(){},while(){},for(){}
2.所有的功能執行語句
echo'字串';
substring($str,0,3);
4.PHP程式的注釋
/* 注釋 */
/**
*這裡的注釋
*/
//注釋
#注釋
5.關於PHP中空白符的使用
空白符有哪些:
1.空格
2.Tab定位字元
3.分行符號
使用:提高程式可讀性
什麼時候使用換行:
1.在兩個”功能執行語句“之間,需要換行
2.定義類的時候 class Person(需要換行)
...
2.2 PHP的變數和常量
作用:
用於臨時的儲存資料的容器
1.以$開始,後面緊跟變數的名稱
a.變數名最好是見文知意
2.PHP中變數名是區分大小寫
3.PHP變數的命名規則
PHP是弱類型的語言,所以說,我們在聲明的變數的時候,可以
不指定資料類型
PHP變數規則:
1.變數以字母或者底線開頭
2.變數只能由字母
3.不能使用關鍵字作為變數名
1.變數定義
1.1 傳統變數的定義
1.2 可變變數的定義
2.變數的傳遞
2.1 按值傳遞
2.2 引用傳遞
2.3 PHP的資料類型-概述
什麼是資料類型:
和變數有關係,是用來描述變數的屬性
$price
$name
資料類型,在PHP裡面,是用來描述變數的值的類型
資料類型,決定了變數在記憶體中的分配方式
PHP的資料類型 和 JAVA的資料類型有什麼不同
1.PHP是弱類型的語言
$price = 23.5
$name = 'PHP從入門到精通'
2. JAVA強資料類型語言
int age = 18;
string name = 'PHP';
float price = 23.5;
PHP基礎資料型別 (Elementary Data Type):
字串:string
小數:faloat
整數:int
邏輯型:boolean
複合類型
數組: //儲存一個系列的圖書的名稱 array()
對象:
特殊的資料類型:
NULL:當定義一個變數,我們沒有進行初始的時候,系統會給它一個預設值NULL
資源類型
例如:資料庫類的串連(第三方資源)
Callback
2.4 PHP基礎資料型別 (Elementary Data Type)-整型(int)
PHP是弱類型語言
PHP整型的支援
1.支援十進位
$age = 18;
2.支援十六進位 0-9 A B C D E F
$temp = 0x55AB;
3.支援8進位 0-7
$temp = 0755==========> 7*8^2 + 5*8^1 + 5*8^0
4.支援二進位
$temp = 0b101;
在PHP中,支援最大的型是多少?
最大整數:2^31 4位元組 有一位符號位
最小整數:-2^31-1
PHP不支援無符號型整數
2.5 PHP的布爾型資料結構
布爾類型是用來儲存真假的資料類型
是用來描述變數值為真或者假的情況的
關鍵字true,false 不區分大小寫
3.使用情境
1.流程式控制制語句
if($is_boy)
{
}
2.三運算子
$a == $b ? 'true':'false';
2.6 PHP基礎資料型別 (Elementary Data Type)----浮點類型
小數 == 浮點類型
浮點數的精度
10進位小數,轉換成2進位小數的問題
例如:
10.7
步驟:
1.先轉換十進位整數部分
//十進位轉二進位:除2取餘倒序
10 -------> 1010
2.再轉換十進位小數部分
// 十進位小數部分乘2取整數部分,順序排列
0.7 ------>1 01100 01100 01100 ...
在這裡,電腦會自動根據平台和PHP啟動並執行解譯器,自己做小數的保留
3.兩部分相加
10進位小數,轉2進位小數時,有時候不能用2進位
準確表示10進位的值
浮點數的最大值:1.8e308
2.7 PHP基礎資料型別 (Elementary Data Type)----字串
用來儲存字串的一種類型:
在PHP中有四種方式可以聲明一個字串
1.使用‘’聲明
2.使用 “”聲明
3.heredoc
4.nowdoc
單引號和雙引號的區別:
2.8 資料類型之間的轉換
1.自動類型轉換(程式維護)
程式在遇到不同類型,程式會進行自動的轉換,轉換關係如下:
整形 《------ 字串
|
|
|
V
浮點型 《------- boolean
2.強制類型轉換(程式來維護)
(int)
(string)
(bool)
(array)
2.9 PHP的資料類型--常量
常量:
指的是在程式的執行中無法修改的值
定義常量:使用函數define(,)
define(,);
例如
define('PI',3.1415926)
判斷常量是否定義:使用函數defined()
第三章 PHP的運算子
3.1 運算子簡介
PHP支援的運算子
算術運算子:加減乘除
賦值運算子
x = 2; = 稱為運算子
比較子
>, <,==,,>=,<=
邏輯運算子
&& || ! or and
3.2 賦值運算子
使用:
將一個值,賦值給另一個變數
3.3PHP運算子-算術運算子
+
-
*
/:3/2 == 1.5
% :
求模的兩端都是正整數的時候,那麼這個操作和計算一樣
如果求模兩端出現小數,則會轉化為整數
如果求模的兩端出現負數,先按照正數算,讓後結果符號和第一個數符號相同
取反 -
所有的運算子,他的操作對象,要麼一個變數,要麼是一個運算式
3.4 比較子
比較子:就是用來比較兩個變數的值的運算
比較子:最終的運算結果是bool類型
!= <> !==(不全等於)
==:用於比較兩個值是否相等
===:不但比較兩個變數的值,而且還要比較變數的地址
var_dump($age == $age1)//PHP的函數,比較兩個變數的值,傳回值為bool
3.5 PHP的邏輯運算子
是對邏輯進行判斷的一種運算子
邏輯運算子的分類:
邏輯與 並且
邏輯或 或者
邏輯非 相反
邏輯異或 xor 兩個比較的值不一樣時,就是真
注意:邏輯運算子的兩端都必須為bool類型,如果不是類型,就會轉換為bool類型
Null 字元串 或者‘0’位false
NULL 也為false
array中沒有元素,轉換為bool類型的時候也是false
3.6 PHP位元運算符
位元運算符:
原理:把運算子兩端的整數轉換為二進位,然後對其進行操作
3.7 其他運算子
錯誤控制運算子:@
作用:可能產生的任何錯誤資訊都被忽略掉,用于于暫時抑制錯誤
遞增/遞減運算子:
++:
前置++:先賦值,後++
後置++:先++,後賦值
--:
前置--:先賦值,後--
後置--:先--,後賦值
執行運算子:``
作用用以執行命令的
$c = `dir('C:\\')`;
echo $c;
字串運算子:
$a = 'abc';
$b = 'efg';
字串串連使用‘-‘(-)減號,不能使用加號
3.8 運算子的優先順序
算術運算子的優先順序:先乘除,後加減
clone new的優先順序最高
運算子的左結合和右結合
第四章 PHP的結構控制
4.1 結構控制概述
1.機器語言 0,1
2.組合語言
ADD =》 +
3.進階語言
用更加利於人類去理解的方式來寫程式
面向過程的語言
C語言 PHP
物件導向的語言
PHP,JAVA
結構程式設計:
結構程式設計是按照一定的原則和原理,組織和編寫正確而且易讀的程式的軟體技術
程式設計的觀點,任何一個程式都僅由順序,條件和重複三種基本控制結構組成
順序結構
選擇結構
迴圈結構
4.2 程式結構
1.順序結構
順序的執行程式:從左至右,從上到下順序執行
4.3 選擇結構
PHP選擇結構
1.最簡單的條件陳述式
4.4 選擇結構
if
else
二選一的情況
4.5 條件多分支情況
header(,,)作用發送一個自訂的http報文,
例如
header('Content-Type:text/html;charset=utf-8');
CHARSET=gb2312
charset=gbk
charset=utf-8
if elseif .. else
4.6 switch多分支
使用情境:需要把同一個變數(或運算式)與很多不同的值進行比較
並根據它等於哪一個進行相關操作
4.7 while迴圈結構
rand(var1,var2);
函數說明:產生一個隨機數,該隨機數的範圍在var1,var2之間
4.10 for迴圈
for(;;)
4.11 foreach迴圈
foreach僅能用於對象和數組,兩種文法
定義數組
$test_data = array('apple','banana','orange','tomoto','type'=>'fruit');
1.方法一
foreach($arr as $value)
遍曆上面的數組
foreach($test_data as $item)
2.方法二
foreach($arr as $key=>$value)
遍曆上面的數組方法
foreach($test_data as $key=>$value)
echo 'key = ',$key,',value=',$value,'
';
第五章 PHP函數的使用
5.1 函數的基本介紹
函數使用的領域
1.數學領域的函數
2.電腦領域的函數:固定的一個程式段,或者稱其為一個子程式,用來實現固定的功能
實現固定的程式段或者功能
函數的特點:
1.重用代碼,減少不必要的,重複代碼的編寫,提高程式的重用性
5.2 函數的定義以及分類以及優點
函數的定義
function fun_name()
{
//code
}
PHP函數的分類
系統函數:
PHP語言自己實現好的函數:abs(),main(),sort()
自訂函數:
函數的優點:
1.調高代碼的的重用性
2.降低了代碼的複雜度
3.避免程式改動帶來的影響
4.封裝性(演算法,資料結構)
5.3 使用者自訂函數
如何去聲明,定義一個函數
文法規則:
function func_name(paramters){
//代碼塊
}
自訂函數並且進行調用
定義函數的注意事項:
1.定義函數必須使用關鍵字:function
2.函數的名稱的命名規則和變數的命名規則相互一致,函數的
的名稱不區分大小寫
3.
5.4 PHP函數的參數傳遞
參數的作用是什麼:
把外部的值,變數傳遞到函數內部
參數和函數體有關係:參數的個數,以及需不需要參數是由商務邏輯參數是由來決定
,通常是因為在代碼(函數體)裡需要使用到外部資料時,才使用參數將外部的值傳遞給函數體
參數:就是函數的入口
傳回值:就是函數的出口,可以使用return;返回函數
函數參數傳遞的分類:
1.普通的參數傳遞:即是值傳遞
max_define(17,19);
$a = 17;$b = 19;
max_define($a,$b);
2.按引用來進行傳遞:改變函數外部的變數
按引用傳遞函數定義
max_redefine(&$a,&$b);
5.5 PHP變數的範圍
範圍:指的是變數的生命週期,相對於記憶體
變數要有記憶體空間儲存變數的值
1、PHP中變數範圍分類
1.局部變數
函數裡面定義的變數
2.全域變數
就是在PHP檔案中直接定義的(不在函數體,類屬性,方法裡面)
3.超全域變數
生命週期在PHP程式開始的時候就已經存在
$_GET ---HTTP GET 變數
$_POST ---HTTP POST 變數
$_FILES ---HTTP 檔案上傳變數
總結:
局部變數的生命週期最短,只存在於代碼塊中
使用全域變數:global $a;
2.在函數裡面使用全域變數要使用關鍵字global進行聲明
function test_area()
{
$c = 8;
global $a,$b;
echo $a,$b;
}
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。