當前位置:九游会j9娱乐平台-九游ag登录中心网址 » 編程語言 » php實用教程

php實用教程-九游会j9娱乐平台

發布時間: 2024-07-13 14:47:51

『壹』 php開發怎麼學習php學習有沒有什麼方法

1.熟悉html/css/js等網頁基本元素,完成階段可自行製作完整的網頁,對元素屬性達到熟悉程度
2.理解動態語言的概念,運做機制,熟悉php語法
3.學習如何將php與html結合起來完成簡單動態頁面
4.接觸mysql,開始設計資料庫程序
5.不斷鞏固,摸透大部分php常用函數,並可理解oop,mysql優化,以及模板
6.完成一個功能齊全的動態站點

『貳』 php紼嬪簭璁捐″煎﹀唴瀹規彁瑕

php紼嬪簭璁捐″煎﹀唴瀹規傝堪:

鏈涔﹀閥濡欏湴緇撳悎浜嗙悊璁虹煡璇嗕笌瀹炴垬欏圭洰錛岀洰鏍囨槸鎸囧艱昏呴氳繃瀹為檯鎿嶄綔錛岄愭ユ帉鎻php緙栫▼騫惰繘琛屽姩鎬乄eb搴旂敤鐨勫紑鍙戱紝浠ユ瀯寤哄姛鑳藉畬鍠勭殑涓灝忓瀷絝欑偣銆傛暣涓瀛︿範榪囩▼鍒嗕負涓ゅぇ閮ㄥ垎銆

絎涓閮ㄥ垎鏄鍩虹綃囷紝鍐呭規兜鐩栦簡php鐨勫巻鍙茶儗鏅銆佸畨瑁呮柟娉曚互鍙婃繁鍏ユ祬鍑虹殑璇娉曠粨鏋勮茶в錛屼負鍒濆﹁呮彁渚涗簡鎵庡疄鐨勫熀紜銆

絎浜岄儴鍒嗗垯鏄瀹炶返綃囷紝鍒嗕負鈥滃垵綰ц繘闃垛濆拰鈥滈珮綰ц繘闃垛濅袱涓妯″潡銆傜簿蹇冩寫閫夌殑瀹炰緥鏃㈠疄鐢ㄥ張鍏鋒湁浠h〃鎬э紝鏃犺轟綘鏄疨hp鐨勫垵瀛﹁呰繕鏄鏈変竴瀹氱紪紼嬬粡楠岀殑寮鍙戣咃紝閮借兘鍦ㄥ叾涓鎵懼埌閫傚悎鑷宸辯殑鎻愬崌璺寰勶紝灝嗘湰涔﹁嗕負瀛︿範鎴栧弬鑰冪殑宸ュ叿銆

瀵逛簬php鐨勫垵綰у拰涓綰х敤鎴鋒潵璇達紝鏈涔︽槸涓鏈鐞嗘兂鐨勬暀紼嬩功綾嶃傚逛簬宸茬粡鏈変竴瀹氬熀紜鐨勫紑鍙戜漢鍛橈紝瀹冩洿鍍忎竴鏈鐗瑰埆鐨勨滅▼搴忓憳鍙傝冩墜鍐屸濓紝鎻愪緵璇﹀疄鐨勫疄渚嬩唬鐮佸拰寮婧愯蔣浠惰祫婧愶紝鍔╁姏浣犵殑涓撲笟鎴愰暱銆傛墍鏈夌ず渚嬬殑婧愪唬鐮佸拰鐩稿叧寮婧愯蔣浠墮兘鏀跺綍鍦ㄩ厤濂楃殑cd-rom涓錛屼緵瀛︿範鑰呬笅杞藉拰瀹炶返銆

『叄』 docker php 入門實踐(三)


在本教程的其餘部分,我們將基於 thinkphp 框架完成一個天氣查詢的應用。使用 天氣查詢-api文檔-開發指南-web服務 api | 高德地圖api 的介面來實現我們的功能。把查詢數據緩存到 mysql 中,這樣就不用每次頻繁的請求第三方的介面了(有請求次數限制)


選擇高德開放平台-天氣查詢 api 主要是因為它是免費的。當然你也可以使用其他的第三方天氣查詢介面,看個人喜好。
該應用是一個非常簡單的 rest api 應用,主要實現兩個介面。



在我們進行應用編碼之前,首先使用 docker 安裝並運行 thinkphp



thinkphp 是一個免費開源的,快速、簡單的面向對象的 輕量級php開發框架 ,是為了敏捷web應用開發和簡化企業應用開發而誕生的。thinkphp從誕生以來一直秉承簡潔實用的設計原則,在保持出色的性能和至簡代碼的同時,更注重易用性。遵循 apache2 開源許可協議發布,意味著你可以免費使用thinkphp,甚至允許把你基於thinkphp開發的應用開源或商業產品發布/銷售 。

這就是為什麼我選擇它作為本教程的教學框架。我不想讓你因為一個框架而放棄,但我也不想從頭開始建立所有的東西,因為該教程的重點是docker,而不是我們的php應用。


用docker 創建 thinkphp 應用 實際上比用本地配置php環境所需的操作少。並且為我們還需要使用 composer,多虧了docker,我們甚至不需要在主機上安裝它。


首先打開你的終端,創建一個項目目錄。



並進入到該目錄中



現在使用[官方composer docker鏡像](https://hub.docker.com/_/composer/)安裝 thinkphp 。



如果你查看weather-app/目錄,你會看到 thinkphp 6 的項目目錄,如下所示:




我們的 docker 運行命令與第二章中的命令相似,但我們使用了不同的鏡像。我們沒有使用運行hello.php 腳本的 php 鏡像,而是使用了一個 composer 鏡像。讓我們來看看有什麼變化。




項目創建完成後,我們需要添加幾個路由 url 和 controller 文件 。讓我們打開 weather-app 目錄下的 app/controller , 然後新建 weather.php 文件,內容如下:



然後打開 weather-app 目錄下的 app/route , 在 app.php 文件中追加如下內容:




現在我們可以在 docker 容器中運行我們的應用程序,只是為了驗證我們的程序是否運行正常,因為我們只添加了兩個路由 url。打開命令行,運行。


現在,在瀏覽器中打開 http://localhost:38000/weather-app/public/index.php/weather/1,你應該看到一個空頁面,上面有以下文字:


那麼恭喜你,你剛剛已經成功地在 docker 中運行了你的第一個 thinkphp 應用程序。


這次我們使用的docker run命令與我們用來運行 hello.php 腳本 和composer create-project ...的兩個命令不同。原因是這次我們想獲得包含 apache 的最新版本的php,這樣我們就可以為我們的 web 應用提供服務。讓我們更詳細地了解新增的命令部分。




你可以通過向終端發送一個 "中斷 "信號來停止和退出終端。在 windows 上,這可以通過按 ctrl 和按c來實現。




運行你的新網路應用程序的另一個選擇是在 "detached"模式中運行容器。這意味著你在終端將不會看到來自你的容器的輸出。這可以通過在我們之前的命令中添加-d標志來實現。




在分離模式下啟動容器後,你的終端將顯示新容器的完整id--類似於a70d25c2a7cedae673f8ab...如果你想停止這個容器,你可以使用docker stop命令,用容器的id告訴docker。比如說



因為輸入整個id是很麻煩的,如果你願意,docker允許你只輸入前三個或更多的字元。




最後,我建議為你的容器命名。我們在本書後面的許多例子中都會這樣做,因為用名字來記住一個容器比用隨機分配的id要容易得多,再加上id是隨機的,所以每次你運行一個新版本的容器時,它都會得到一個新的id。只要不是已經有一個同名的容器,名字就可以多次發出來。為了給我們的新應用容器命名,我們可以用傳入的--name標志重新創建它。



在使用docker run命令時,還有許多可用的選項,所以你可能想更詳細地閱讀文檔。在我們開發其餘的應用程序時,我們會涉及其中的一些選項。


現在我們要引入高德的天氣 sdk ,在使用該 sdk 之前你需要閱讀高德開放平台-天氣查詢的技術文檔,再添加 sdk 之前我們首先要確保所有現有的容器都停止了。



這個命令將列出所有正在運行的容器。你也可以通過添加-a標志來查看停止的容器。
如果有任何容器正在運行,那麼在我們繼續前進之前,使用docker stop 來停止它們。



該命令將在你的項目中裝新的軟體包。在這個過程中,你應該在終端看到一些類似這樣的輸出。



現在 sdk 已經安裝完畢,可以使用了。


我們將使用剛剛添加的高德天氣 sdk 來完善我們的業務邏輯,打開 controller 目錄下的 weather.php 添加以下內容:




我們做了一些更新--主要是對引入天氣 api 初始化天氣類



我們的應用程序已經初步完成了向api傳遞一個真實的位置id並返回一些數據。首先,使用這個高德位置查詢找到一個位置id。我使用的是上海的id進行測試。310000,當然你直接傳 上海 也是可以的。ok,讓我們再次運行docker容器。



並在你的瀏覽器中訪問正在運行的應用程序,地址是http://localhost:38000/weather-app/public/index.php/weather/310000。你應該可以看到一個json數據,看起來像這樣。



你的 docker 化的 php 應用程序現在正從外部數據源返回真實數據,並在apache中提供服務,但你可能會注意到,它的速度並不快(我的頁面載入時間為1.92秒!)。
高德天氣 api 是一個免費的服務,其他國家可能無法訪問。為了解決這個問題,我們將把查詢的數據保存在我們自己的 mysql 資料庫中,可以再下次訪問的時候可以快速地響應。這將極大地提高性能,下個章節我們將學習如何用 docker 將 mysql 與 php 應用程序相結合。

熱點內容
matlab命令窗口和新建腳本 發布:2024-07-17 15:51:26 瀏覽:374
建ftp文件夾 發布:2024-07-17 15:51:26 瀏覽:954
魔獸撿物腳本 發布:2024-07-17 15:27:56 瀏覽:129
開發ip伺服器 發布:2024-07-17 15:24:42 瀏覽:387
安卓系統視頻製作哪個好用 發布:2024-07-17 15:10:47 瀏覽:210
androidapk結構 發布:2024-07-17 15:10:43 瀏覽:945
c語言指針的例子 發布:2024-07-17 15:08:01 瀏覽:768
linuxzcat 發布:2024-07-17 15:02:09 瀏覽:901
賓士編程嗎 發布:2024-07-17 14:57:08 瀏覽:853
硬碟加密硬體 發布:2024-07-17 14:51:05 瀏覽:836
网站地图