PHP初体验,爱之初体验
1. 相关内容介绍
1>互联网开发
-
互联网:传统互联网、移动互联网
-
互联网开发:前端开发(前台)、后台开发(后端、服务端)
-
前端开发:视觉展示(用户界面)、用户交互、采集输入信息
-
后台开发:管理和处理数据、开发对客户端的接口、控制输出
2> 客户服务器模式(C/S)
-
客户端:主动启动通信(发起请求),例如:浏览器、移动客户端等
-
服务器:被动等待通信(响应请求),例如:web服务器、FTP服务器、邮件服务器等
3> Web Server开发
Web Server(服务器):在网络环境下,为发起请求的客户端提供响应服务,主要处理HTTP请求。
1> 环境搭建
-
Apache:Web服务器软件,支持绝大部分计算机操作系统,是最流行的Web服务器软件之一。Mac系统自带Apache。
-
PHP:适用于Webserver开发的脚本语言,跨平台,支持绝大部分数据库及操作系统,混合了C、Java语言的语法,开放源代码。
-
MySQL:关系型数据库管理系统,体积小、速度快,广泛运用在中小型网站中。
2> XAMPP和Coda
- XAMPP是一个软件包,集成了Apache+PHP+MySQL安装环境,一键安装,方便快捷。
Coda:一款适用于Mac电脑的网页编程工具,具有多语言支持(HTML、PHP、JavaScript、CSS等)
3> Web Server工作流
1> 原理
2> 本地服务器路径
3> 访问服务器文件
URL格式:协议://域名/路径/查询
http://127.0.0.1
访问本地Web服务器根目录,默认加载index文件内容
http://127.0.0.1/文件路径(包含文件名及后缀)
访问本地Web服务器根目录下的某个文件,图片、php、html
4. PHP基本语法
1> PHP标记
<?<span>php </span><span>echo</span>("hello lanou");<span>//</span><span> 输出函数</span> "<br/>" <span>//</span><span> 换行</span> <span>echo</span> "iOS"; <span>//</span><span> 输出函数,可以不带括号 </span> ?>
参考学习网址:http://www.runoob.com/php/php-tutorial.html
2> 变量
变量定义
变量以$开头,后面跟变量名
变量字母,数字,下划线组成,不以数字开头
变量名区分大小写
定义自动类型变量
<span> $int_value</span> = 10<span>; </span><span>$float_value</span> = 1.5<span>; </span><span>$name</span> = "hello lanou";
获取变量类型返回string
<span> gettype</span>(<span>$name</span>);
3> String
连接字符串
<span>$name</span> = 'iPhone'<span>; </span><span>$str</span> = '5'<span>; </span><span>$name</span> = <span>$name</span>.<span>$str</span><span>; </span><span>echo</span>(<span>$name</span>);
4> if分支
<span>//</span><span>比较两个变量,输出最大值</span> <span>$a</span> = 3;<span>$b</span> = 5<span>; </span><span>if</span>(<span>$a</span>><span>$b</span><span>){ </span><span>echo</span>(<span>$a</span><span>); }</span><span>else</span><span>{ </span><span>echo</span>(<span>$b</span><span>); }</span>
5> for循环
<span>//</span><span>输出1~10之间所有的数</span> <span>for</span>(<span>$i</span> = 1;<span>$i</span><=10;<span>$i</span>++<span>){ </span><span>echo</span>(<span>$i</span>.'<br>'<span>); }</span>
6> 随机数
生成a~b之间的随机数 rand(a, b)
<span>//</span><span> 生成20~50之间的随机数,并输出</span> <span>$num</span> = <span>rand</span>(20, 50<span>); </span><span>echo</span> <span>$num</span>;
7> 数组
在PHP中,使用array()函数创建数组
在PHP中,数组有三种类型:
数值数组 - 带有数字ID键的数组 (类似NSArray)
关联数组 - 带有指定键的数组,每个键关联一个值 (类似NSDictionary)
多维数组 - 包含一个或多个数组的数组
<span>$array1</span> = <span>array</span>(); <span>//</span><span> 空数组</span> <span>$array2</span> = <span>array</span>(99, 98, 97); <span>//</span><span> 数值数组 </span> <span>$array3</span> = <span>array</span>("name"=>"lishuai", "age"<span>=>40); // 关联数组,键=>值 print_r(</span><span>$array3</span>); // 输出数组内容
8> 数值数组
count()函数用于返回数组元素的数量
<span>$count</span> = <span>count</span>(<span>$array</span><span>); </span><span>echo</span> <span>$count</span>;
添加数组元素
<span>$array</span>[] = 96; <span>//</span><span> 数组中最后一个元素</span>
访问数组元素
$array[数字ID键]
遍历数值数组
foreach(数组 as $value){
echo($value."
");
}
<span>$array</span> = <span>array</span>(12, 13, 14, 15<span>); </span><span>foreach</span>(<span>$array</span> <span>as</span> <span>$value</span><span>){ </span><span>echo</span>(<span>$value</span>."<br/>"<span>); }</span>
9> 关联数组
<span>$person</span> = <span>array</span>("name"=>"yihuiyun", “age"=>"18"<span>) print_r(</span><span>$person</span>); // 输出
输出结果 Array ( [name] => yihuiyun [age] => 18 )
<span>$person</span> = <span>array</span>("name"=>"yihuiyun", “age"=>"18"<span>) // count()函数用于返回数组元素的数量 </span><span>$count</span> = count(<span>$person</span><span>); echo </span><span>$count</span><span>; //添加键值对 </span><span>$person</span>["sex"] = "female"<span>; //根据键获取值 //</span><span>$person</span>[键]
遍历关联数组
foreach(数组 as $key=>$value){
echo($key.":".$value."
");
}
<span>$person</span> = <span>array</span>("name"=>"yihuiyun", “age”=>”18"<span>); foreach(</span><span>$person</span> as <span>$key</span>=><span>$value</span><span>){ echo(</span><span>$key</span>.":".<span>$value</span>."<br/>"<span>); }</span>
10> json转换
<span>//</span><span> 数组转json字符串</span> <span>$json</span> = json_encode(<span>$array</span><span>); </span><span>//</span><span> json字符串转PHP对象</span> <span>$array</span> = json_decode(<span>$json</span>);
5. PHP实现API接口开发(GET)
1> 概述
在 PHP 中,预定义的 $_GET 变量用于收集来自 method="get" 的表单中的值。
从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送信息的量也有限制。
GET 传值的一个 URL:http://127.0.0.1/get.php?username=lanou&password=123
解析:http://127.0.0.1/get.php?参数名1=值1&参数名2=值2
参数名通常由后台规定,前端根据接口文档填写
PHP文件接收数据代码:
<span>//</span><span> 获取数据 key必须与参数名保持一致</span> <span>$name</span> = <span>$_GET</span>["username"<span>]; </span><span>$password</span> = <span>$_GET</span>["password"];
2> iOS网络编程
代码:
6. PHP实现API接口开发(POST)
1> 概述
预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值。
从带有 POST 方法的表单发送的信息,对任何人都是不可见的(不会显示在浏览器的地址栏),并且对发送信息的量也没有限制
http://127.0.0.1/post.php
URL中不需要携带参数,通过body上传参数
PHP文件接收数据代码:
<span>//</span><span> 获取数据 key必须与参数名保持一致</span> <span>$name</span> = <span>$_POST</span>["username"<span>]; </span><span>$password</span> = <span>$_POST</span>["password"];

PHP是一種服務器端腳本語言,用於動態網頁開發和服務器端應用程序。 1.PHP是一種解釋型語言,無需編譯,適合快速開發。 2.PHP代碼嵌入HTML中,易於網頁開發。 3.PHP處理服務器端邏輯,生成HTML輸出,支持用戶交互和數據處理。 4.PHP可與數據庫交互,處理表單提交,執行服務器端任務。

PHP在過去幾十年中塑造了網絡,並將繼續在Web開發中扮演重要角色。 1)PHP起源於1994年,因其易用性和與MySQL的無縫集成成為開發者首選。 2)其核心功能包括生成動態內容和與數據庫的集成,使得網站能夠實時更新和個性化展示。 3)PHP的廣泛應用和生態系統推動了其長期影響,但也面臨版本更新和安全性挑戰。 4)近年來的性能改進,如PHP7的發布,使其能與現代語言競爭。 5)未來,PHP需應對容器化、微服務等新挑戰,但其靈活性和活躍社區使其具備適應能力。

PHP的核心優勢包括易於學習、強大的web開發支持、豐富的庫和框架、高性能和可擴展性、跨平台兼容性以及成本效益高。 1)易於學習和使用,適合初學者;2)與web服務器集成好,支持多種數據庫;3)擁有如Laravel等強大框架;4)通過優化可實現高性能;5)支持多種操作系統;6)開源,降低開發成本。

PHP沒有死。 1)PHP社區積極解決性能和安全問題,PHP7.x提升了性能。 2)PHP適合現代Web開發,廣泛用於大型網站。 3)PHP易學且服務器表現出色,但類型系統不如靜態語言嚴格。 4)PHP在內容管理和電商領域仍重要,生態系統不斷進化。 5)通過OPcache和APC等優化性能,使用OOP和設計模式提升代碼質量。

PHP和Python各有優劣,選擇取決於項目需求。 1)PHP適合Web開發,易學,社區資源豐富,但語法不夠現代,性能和安全性需注意。 2)Python適用於數據科學和機器學習,語法簡潔,易學,但執行速度和內存管理有瓶頸。

PHP用於構建動態網站,其核心功能包括:1.生成動態內容,通過與數據庫對接實時生成網頁;2.處理用戶交互和表單提交,驗證輸入並響應操作;3.管理會話和用戶認證,提供個性化體驗;4.優化性能和遵循最佳實踐,提升網站效率和安全性。

PHP在數據庫操作和服務器端邏輯處理中使用MySQLi和PDO擴展進行數據庫交互,並通過會話管理等功能處理服務器端邏輯。 1)使用MySQLi或PDO連接數據庫,執行SQL查詢。 2)通過會話管理等功能處理HTTP請求和用戶狀態。 3)使用事務確保數據庫操作的原子性。 4)防止SQL注入,使用異常處理和關閉連接來調試。 5)通過索引和緩存優化性能,編寫可讀性高的代碼並進行錯誤處理。

在PHP中使用預處理語句和PDO可以有效防範SQL注入攻擊。 1)使用PDO連接數據庫並設置錯誤模式。 2)通過prepare方法創建預處理語句,使用佔位符和execute方法傳遞數據。 3)處理查詢結果並確保代碼的安全性和性能。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Atom編輯器mac版下載
最受歡迎的的開源編輯器

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

WebStorm Mac版
好用的JavaScript開發工具