前言
在web開發這個領域對php 可是早有耳聞,大家對php贊不絕口,稱贊有加,這讓php火了一陣子,現在也依舊流行,所以我實在是忍不住想搞搞php了,以前以為學了jsp就沒必要學php了,因為用j2ee這個平臺也照樣做web開發,但是,聽到php這么多優點,這么火,所以打算學學php,而且據說有c和java基礎的人學習起來特別快,因為php善于吸收其他語言的優點,如c的語法和指針(雖說沒有真正意義上的指針),java的面向對象和異常處理等等,還有perl語言的優點。那我就要看看php的神秘面紗。縱觀php的歷史,從95年php的誕生,全稱是“Personal Home Page”,到97年php發展到php3,全稱是“Hypertext Preprocessor”,再到2000年php4的正式發布,再到2004年php5發布,這個時候的php面向對象的功能被強化,再到剛過去的2015年,在不久前的2015年6月php7發布,據說php7性能比php5.6提升了兩倍,還提供全面一致的64位的支持。簡單地了解了一下php的發展歷史,可見php一直在不斷地升級完善,所以非常值得研究一下,下面開始萬里長征第一步php開發環境搭建,仿佛我看到了前面的曙光,哈哈。
資源準備
由于php是嵌套在html中的運行于服務器端的腳本語言, 運行于服務器端說明在前臺網頁的源代碼中只能看到html,js,css等前端代碼而看不到php的源碼,因為php的源碼被服務器解析了。那么和jsp開發一樣需要一款服務器,jsp通常用的是tomcat服務器,那么php通常用的是什么服務器呢?php通常用的是Apache,當然還可以是IIS服務器,因為Apache服務器最大的優點是免費開源,所以更多的是選擇apache服務器。php做web開發除了需要有自身的語音包支持和apache服務器外還需要有一個后臺數據庫,通常是用MySQL,也可以是sql server或者Oracle,而php做web開發最佳組合是PHP+MySQL+Apache,所以開發學習php web開發之前我們需要去網上下載一些資源,php web開發需要的資源如下:
(1) PHP語言包
官網下載地址:[http://windows.php.net/download#php-7.0](http://windows.php.net/download#php-7.0),在這里選擇電腦處理器位數和相應的版本的php下載(最好是線程安全的)。這篇文章基于php5.6。
(2) Apache服務器
官網有很多種類和版本,這里的文章是基于Apache 2.4,去官網下載apache教程:
1、進入apache[下載官網](http://httpd.apache.org/download.cgi),如下圖,點擊紅色部分

2、進入第二個頁面,選擇紅色部分

3、進入第三個頁面,選擇相應VC版本的apache下載(注意紅色部分)


下載好Apache后,下載安裝MySQL.
(3) MySQL下載安裝
可以去官網下載,這里我直接給上MySQL5.5的安裝包,各個版本差異不大。[點擊下載MySQL5.5]。([http://download.csdn.net/detail/ydxlt/9407169](http://download.csdn.net/detail/ydxlt/9407169))
MySQL的安裝都好簡單,但需要注意安裝之前,先把之前安裝的MySQL清理干凈,否則可能會導致安裝失敗。如果之前的可以用,就不要在安裝MySQL了。安裝過程需要注意的選項如下(沒有附圖的代表選擇默認就可以了,紅色部分代表我們選擇的部分):
選擇第二個選擇自定義安裝后



用戶名和密碼需要記住,這里都設為root,以后我們需要這個用戶名和密碼連接數據庫。




MySQL安裝好后,資源就準備完畢了,下面開始配置開發環境。
Apache安裝配置
第一步: 找到下載的apache,解壓放到一個目錄下面,我這里選擇的目錄是D盤的AMP目錄:

第二步:配置和安裝apache服務,需要先修改配置文件的錯誤,因為apache解壓版,默認apache是安裝在c盤的Apache。可以通過命令行httpd -t指令檢測配置文件是否有語法錯誤,如下:

這里的意思是說apache配置文件httpd.conf配置文件語法有錯誤,那我們就修改過來唄。打開apache解壓目錄conf文件夾下的httpd.conf文件:

打開這個配置文件:

這里我用得是notopad++,這款編輯器不錯推薦一下,還有sublime text編輯器也不錯。這里點擊全部替換。
替換后再打開cmd命令行,輸入http -t再檢查一下語法,如下:

可以看到我們替換后,配置文件就有語法錯誤了,下面開始安裝apache服務。
第三步:安裝apache服務,用管理員身份打開cmd,進入apache的bin目錄下執行`httpd -k install`命令安裝apache服務:

接下來啟動apache服務,測試一下是否安裝成功,打開apache bin目錄下的ApacheMonitor.exe(如果打開提示缺少dll文件,那么就需要安裝上面說的VC了,安裝后就可以打開這個monitor了),打開后如下:

OK,在瀏覽器中輸入localhost回車,看到如下圖說明apache安裝成功了。

其實瀏覽器顯示的it works是apache默認站點htdocs(其實就位于apache目錄下的htdocs文件夾)下的默認主頁index.html的內容。自此,apache安裝成功,接下來需要配置php,讓apache和php一起工作(將php作為apache的一個模塊)。
第四步:配置php模塊到apache服務器,以使得apache可以解析php。
先在apache 的htdocs目錄建一個php文件,這里叫index.php,在這個文件中寫入如下內容:
~~~
<?php
echo "hello php world!";
?>
~~~
啟動apache服務,在瀏覽器中輸入localhost/index.php可以看到:

原封不動地顯示了php的內容,并沒有解析php,那么我們在httpd.conf中做如下配置:

完了后重啟apache服務器(修改了配置文件都要重啟),再次在瀏覽器中訪問index.php,可以看到php被解析了:

說明:apache配置php成功!接下來,我們需要配置做一些php的相關配置及將MySQL配置到php中。
php配置(時區和MySQL)
(1) 配置php時區
打開php解壓目錄,可以看到:

復制開發階段的文件到當前目錄(也可以直接修改后綴),改名為php.ini,打開這個php.int,配置時區:

PRC代表中華人民共和國,即這里是中國時區,測試時區是否配置成功
在index.php中寫如下語句:
~~~
<?php
echo "hello php world!<br>";
echo "currentTime:" . date("Y:m:d H:i:s") ."<br>";
?>
~~~
打開瀏覽器訪問localhost/index.php:

這表明,時區配置成功,如果沒有做上面的時區配置,那么將會顯示UTC(全國統一時間),并顯示警告。接下來要配置mysql了。
(2) 配置mysql
配置之前我們先在index.php中添加如下代碼(前面的root是你mysql的賬號,后面的root是你mysql的密碼,自己改過來):
~~~
$link = mysql_connect("localhost","root","root");
if($link){
echo "連接失敗!";
}else{
echo "連接成功!";
}
~~~
訪問index.php:

發現我們調用了沒有定義的函數,那我們需要將mysql模塊添加到php中。
開始配置:
1、打開php.ini文件,查找extension_dir關鍵字
可以看到這行語句:

去掉前面的注釋并將ext文件路徑改成我們自己的ext路徑,即修改為:

2、在php.int中繼續查找php_mysql關鍵字

重新啟動apache,再次訪問index.php:

至此php web開發環境就搭建好了。
總結:
php web開發環境搭建的整個過程主要是為了完成三個任務,即:
1. 配置apache以運行php,即輸入第一行語句;
1. 配置時區,即輸入第二行語句;
1. 配置mysql,即輸入第三行的結果。
所以我們在測試頁面index.php中寫了如下測試代碼:
~~~
<?php
echo "hello php world!<br>"; // 能解析輸出hello php world!說明php模塊成功添加到了apache中了
echo "currentTime:" . date("Y:m:d H:i:s") ."<br>"; // 能輸出我們現在的時間,說明時區改過來了
$link = mysqli_connect("localhost","root","28b21c1cfd"); // mysql連接成功,說明mysql模塊成功添加到了php中了
if($link){
echo "連接成功!";
}else{
echo "連接失敗!";
}
?>
~~~
這些都能成功輸出說明我們的環境搭建完成了,這里說明一下,apache安裝后有個默認的站點是安裝目錄的htdocs文件夾,這個我們也可以修改,還可以配置多站點及訪問權限和分布式權限控制,這個將在以后的文章中會記錄,其實也很簡單。