科技知識動態:PHP 系列:PHP Web 開發基礎,phpweb_PHP教程

導讀 跟大家講解下有關PHP 系列:PHP Web 開發基礎,phpweb_PHP教程,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說PHP 系列

跟大家講解下有關PHP 系列:PHP Web 開發基礎,phpweb_PHP教程,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說PHP 系列:PHP Web 開發基礎,phpweb_PHP教程,小編也收集到了有關PHP 系列:PHP Web 開發基礎,phpweb_PHP教程的相關資料,希望大家看到了會喜歡。

PHP 系列:PHP Web 開發基礎,phpweb

PHP是動態類型的Web開發的腳本語言,PHP以頁面文件作為加載和運行的單元,PHP現在有了Composer作為開發包管理。

1.使用Composer管理依賴

自從.NET開發用了Nuget管理程序集依賴,我就再也離不開它了,幸虧Java中也有Maven管理jar包,雖然開源中國的鏡像太慢但還有ibiblio的鏡像可用,PHP現在終于有了Composer(參考1)用來管理資源包。

(1)全局安裝(參考2)

在指定安裝目錄中執行命令行:

php -r"readfile('https://getcomposer.org/installer');"| php

在指定安裝目錄中執行命令行:

echo @php"%~dp0composer.phar"%*>composer.bat

將指定安裝目錄添加到環境變量的系統變量Path中。

(2)項目安裝

在項目目錄中執行命令行:

php -r"readfile('https://getcomposer.org/installer');"| php

使用 composer.json 文件配置依賴。如配置PHP中常用的日志組件:

{"require": {"monolog/monolog":"1.0.*"}}

使用命令行命令 php composer.phar install 安裝依賴的資源包。如果進行了全局安裝,只需要執行composert install。

這會將生成 composer.lock 文件并依賴下載資源包到 vendor 目錄,composer.lock 文件是下載依賴時真正使用的文件。

(3)升級依賴

項目使用 composer.lock 文件維護依賴,如果我們需要使用更新版本的依賴,需要按需修改 composer.json 文件并執行更新命令。全局安裝:composer update,項目安裝使用:php composer.phar update。

(4)資源包查詢與鏡像

可以使用http://packagist.org檢索資源包,好比.NET中的https://www.nuget.org/packages/和Java中的http://search.maven.org/。

可以使用http://packagist.phpcomposer.com鏡像,全局配置使用如下命令行命令:

composer config -g repo.packagist composer http://packagist.phpcomposer.com

項目配置使用如下命令行:

composer config repo.packagist composer http://packagist.phpcomposer.com

當然最簡單的方式是直接修改composer.config文件:

{"require": {"monolog/monolog":"1.0.*"},"repositories": {"packagist": {"type":"composer","url":"http://packagist.phpcomposer.com"} }}

(5)自動加載

Composert 在 vendor 目錄下自動生成并維護包含了全部依賴信息的 autoload.php 文件。因此我們只需要通過 autoload.php 使用第三方庫即可。例如:

pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));$log->addWarning('Foo');?>2.PHP基礎

(1)PHP類似C語系語法的腳本語言。

如果你有C或C++語言的基礎,那么很多概念和語法都可以直接對照。從大小寫敏感到注釋,從數據類型、函數、參數傳遞和成員引用等。從C/C++/Java/C#這一體系學習下來,再加上JavaScript腳本語言的基礎,加點PHP的技能點水到渠成。

(2)PHP是動態類型語言。

PHP有和C語言等強類型語言一樣的數據類型定義,支持的類型也相仿,只是PHP中同一變量在不同時刻可以表示不同類型的數據,但同一時刻,每個變量都相當于強類型中的指定類型的變量。因此對于PHP,更適合的稱呼是動態類型。習慣使用Java/C#等強類型語言總會對動態類型的腳本語言心存焦慮,可以通過PHP的類型檢查函數減少這方面的顧慮(is_bool\is_integer\is_double\is_string\is_null等)。

(3)PHP以頁面文件方式運行。

無論如何使用PHP,PHP的都是以頁面文件方式運行的,這和運行在瀏覽器端的JavaScript方式類似,JavaScript文件只有在被加載到當前頁面才能引用和執行,PHP也只有在通過include或required方式加載后才能引用和執行,即使后續添加的 __autoload和spl_autoload依然只是簡化而非改變了其加載引用的本質。

(4)PHP不需要復雜的框架

PHP天生是處理Web請求的,HTTP協議相關的內容是PHP的重點,一般來講,除了縱向請求的處理,橫向的認證和授權控制部分,其他部分不應該過于依賴PHP,如果通過耦合性較高的Web框架使用PHP本身就是錯誤的。由于PHP本身的運行和加載方式,導致PHP天生就適合復用各種組件而非使用框架來解決問題。成天寄希望于框架的人,要么是不想在PHP基礎要么是不想在業務邏輯基礎上下功夫。

3.PHP常用文件

(1)配置文件config.php

應用配置的各種信息定義在一個或多個配置文件中。一般每次請求都會加載配置文件,配置文件中不只包含了數據庫連接信息,如應用MVC時,每次請求都會加載配置文件以便讀取所有URL和Controller以及View之間的規則。

(2)入口文件index.php

處理首頁請求或全部請求的文件。index.php在實現PHP的MVC時是天然的前段控制器FrontController,由index.php負責縱向的處理請求轉發,橫向的認證和授權等處理文件,等也需要在index.php中加載。

(3)數據訪問文件database.php

database.php是工具類中最主要的用于數據訪問的文件,為了避免數據訪問中重復性出現的代碼,一般的PHP應用程序都會獨立的一個或一組數據訪問文件。

4.自定義Session

在PHP中自定義Session比Java中方便多了,只需要將自定義的函數名稱做為參數傳遞給session_set_save_handler($open, $close, $read, $write, $destroy, $gc)作為參數即可,我們自定義一個使用cookie作為存儲的session,作為演示沒有對數據長度進行驗證,也沒有使用對稱加密解密。

參考

(1)https://getcomposer.org/doc/00-intro.md

(2)http://docs.phpcomposer.com/00-intro.html

http://www.bkjia.com/PHPjc/1092700.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1092700.htmlTechArticlePHP 系列:PHP Web 開發基礎,phpweb PHP是動態類型的Web開發的腳本語言,PHP以頁面文件作為加載和運行的單元,PHP現在有了Composer作為開發包管...

來源:php中文網

免責聲明:本文由用戶上傳,如有侵權請聯系刪除!