[TOC]
**PHP 變量**>[success] PHP 是一種創建動態交互性站點的強有力的服務器端腳本語言。
PHP 是免費的,并且使用非常廣泛。同時,對于像微軟 ASP 這樣的競爭者來說,PHP 無疑是另一種高效率的選項。
PHP 腳本在服務器上執行。
## PHP吹吹牛
### 什么是 PHP?
1. PHP 是 "PHP Hypertext Preprocessor" 的首字母縮略詞
2. PHP 是一種被廣泛使用的開源腳本語言
3. PHP 腳本在服務器上執行
4. PHP 沒有成本,可供免費下載和使用
### 什么是 PHP 文件?
1. PHP 文件能夠包含文本、HTML、CSS 以及 PHP 代碼
2. PHP 代碼在服務器上執行,而結果以純文本返回瀏覽器
3. PHP 文件的后綴是 ".php"
### PHP 能夠做什么?
1. PHP 能夠生成動態頁面內容
2. PHP 能夠創建、打開、讀取、寫入、刪除以及關閉服務器上的文件
3. PHP 能夠接收表單數據
4. PHP 能夠發送并取回 cookies
5. PHP 能夠添加、刪除、修改數據庫中的數據
6. PHP 能夠限制用戶訪問網站中的某些頁面
7. PHP 能夠對數據進行加密
>[warning] 通過 PHP,您可以不受限于只輸出 HTML。您還能夠輸出圖像、PDF 文件、甚至 Flash 影片。您也可以輸出任何文本。
## PHP運行環境安裝
>[success] PHP腳本需要PHP解析器來才能運行,所以需要在服務器安裝PHP.
1. Linux下安裝PHP環境 Linux+Apache+MySQL+PHP(LAMP)
2. Windows下安裝PHP環境 Windows+Apache+MySQL+PHP(WAMP)
3. 集成環境:Wampserver,phpstudy
## PHP 標記
當解析一個文件時,PHP 會尋找起始和結束標記,也就是 `<?php` 和 `?>`,這告訴 PHP 開始和停止解析二者之間的代碼。此種解析方式使得 PHP 可以被嵌入到各種不同的文檔中去,而任何起始和結束標記之外的部分都會被 PHP 解析器忽略。
PHP 也允許使用短標記 `<?` 和` ?>` ,但不鼓勵使用。只有通過激活 `php.ini` 中的 `short_open_tag` 配置指令或者在編譯 PHP 時使用了配置選項` --enable-short-tags` 時才能使用短標記。
如果文件內容是純 PHP 代碼,最好在文件末尾刪除 PHP 結束標記。這可以避免在 PHP 結束標記之后萬一意外加入了空格或者換行符,會導致 PHP 開始輸出這些空白,而腳本中此時并無輸出的意圖。**注意點,在圖片輸出中可能遇到問題**.
~~~
<?php
echo "Hello world";
// ... more code
echo "Last statement";
// 腳本至此結束,并無 PHP 結束標記
~~~
## PHP與HTML混編
凡是在一對開始和結束標記之外的內容都會被 PHP 解析器忽略,這使得 PHP 文件可以具備混合內容。 可以使 PHP 嵌入到 HTML 文檔中去,如下例所示。
~~~
<p>This is going to be ignored by PHP and displayed by the browser.</p>
<?php echo "While this is going to be parsed."; ?>
<p>This will also be ignored by PHP and displayed by the browser.</p>
~~~
## PHP指令分隔符(結束符)
同 C 或 Perl 一樣,PHP 需要在每個語句后用分號結束指令。一段 PHP 代碼中的結束標記隱含表示了一個分號;在一個 PHP 代碼段中的最后一行可以不用分號結束。如果后面還有新行,則代碼段的結束標記包含了行結束。
~~~
<?php
echo "This is a test";
?>
<?php echo "This is a test" ?>
<?php echo "We omitted the last closing tag";
~~~
## PHP空白和換行符
一般來說,空白符在PHP中無關緊要。可以將一個語句展開成任意行,或者將語句緊縮在一行。
可以利用這個靈活的格式來使代碼更具有可讀性(通過排列分配、縮進 等)。一些懶惰的程序員利用這種自由的格式創建根本無法閱讀的代碼,這是不提倡的。
## PHP注釋
PHP 支持 C,C++ 和 Unix Shell 風格(Perl 風格)的注釋。例如:
~~~
<?php
echo "This is a test"; // This is a one-line c++ style comment
/* This is a multi line comment
yet another line of comment */
echo "This is yet another test";
echo "One Final Test"; # This is a one-line shell-style comment
?>
~~~
>[danger]練習:1. 搭建可供PHP運行的開發環境。2. 創建php文件,輸出“我愛學并思”。
- 序言
- 第一章:準備工作
- 寫在學習之前的話
- web應用開發結構
- 開發工具/環境
- 第二章:展現層面(HTML/CSS)
- HTML簡介
- HTML基礎
- HTML編碼
- HTML鏈接
- HTML圖像
- HTML列表
- HTML表單
- HTML表格(分水嶺)
- HTML 實體
- HTML框架
- CSS層疊樣式表
- CSS選擇器
- CSS文本/字體
- CSS繼承和疊加
- CSS框模型
- CSS浮動(分水嶺)
- CSS定位
- CSS背景
- CSS圖標字體
- CSS補充
- 開發技巧
- 第三章:展現層面(Javascript)
- JS簡介
- JS實現
- JS輸出交互
- JS變量
- JS數據類型
- JS運算符
- JS流程控制(分水嶺)
- JS函數
- JS數組
- JS對象(分水嶺)
- JS數組對象
- JS字符串對象
- JS數學對象
- JS日期對象
- JS BOM對象(分水嶺)
- JS DOM對象
- JS事件對象
- JS元素對象
- JS DOM節點
- 第四章:展現層面(Jquery)
- JQ簡介
- JQ使用
- JQ選擇器
- JQ篩選
- JQ屬性
- JQ-CSS
- JQ事件
- JQ文檔處理
- JQ效果
- JQ-ajax
- 第五章:邏輯/業務層面(PHP)
- PHP簡介
- PHP變量
- PHP數據類型
- PHP常量
- PHP運算符
- PHP流程控制
- PHP函數(分水嶺)
- PHP日期
- PHP數學
- PHP數組
- PHP字符串
- PHP正則表達式(分水嶺)
- PHP目錄操作
- PHP文件
- PHP上傳/下載
- PHP面向對象(分水嶺)
- PHP圖像處理
- PHP會話控制
- Ajax異步處理
- PHPMysql擴展
- PHPMysqli擴展
- PHPPdo擴展
- PHP接口
- PHP命名空間
- 第六章:邏輯/業務層面(框架設計)
- 第七章:存儲層面(mysql)
- Mysql基礎
- Mysql Sql簡介
- Mysql數據庫
- Mysql數據類型
- Mysql數據表
- Mysql操作記錄
- Mysql查詢
- Mysql修改表結構
- Mysql日期與時間
- Mysql分組統計
- Mysql多表查詢
- Mysql安全
- Mysql存儲引擎
- Mysql事務
- Mysql視圖
- Mysql觸發器
- Mysql存儲過程
- Mysql存儲函數
- Mysql優化
- 第八章:服務器(Linux)
- Linux介紹與安裝
- Shell
- 目錄與文件操作
- VIM編輯器使用
- 帳號管理
- SUDO
- 權限控制
- 壓縮與打包
- 軟件安裝
- 計劃任務
- 進程管理
- 寶塔Linux面板