PHP字符串過(guò)濾教程
PHP 的 date() 函數(shù)用于格式化時(shí)間或日期。
在 PHP 中,您能夠在服務(wù)器執(zhí)行 PHP 文件之前把該文件插入另一個(gè) PHP 文件中。
include 和 require 語(yǔ)句用于在執(zhí)行流中向其他文件插入有用的的代碼。
include 和 require 很相似,除了在錯(cuò)誤處理方面的差異:
require 會(huì)產(chǎn)生致命錯(cuò)誤 (E_COMPILE_ERROR),并停止腳本
include 只會(huì)產(chǎn)生警告 (E_WARNING),腳本將繼續(xù)
<html>
<body>
<div class="leftmenu">
<?php include 'menu.php'; ?>
</div>
<h1>Welcome to my home page.</h1>
<p>Some text.</p>
</body>
</html>
fopen() 函數(shù)用于在 PHP 中打開(kāi)文件。
<html>
<body>
<?php
$file=fopen("welcome.txt","r");
?>
</body>
</html>
PHP,可以把文件上傳到服務(wù)器。
通過(guò)使用 PHP 的全局?jǐn)?shù)組 $_FILES,你可以從客戶(hù)計(jì)算機(jī)向遠(yuǎn)程服務(wù)器上傳文件。
第一個(gè)參數(shù)是表單的 input name,第二個(gè)下標(biāo)可以是 "name", "type", "size", "tmp_name" 或 "error"。就像這樣:
$_FILES["file"]["name"] - 被上傳文件的名稱(chēng)
$_FILES["file"]["type"] - 被上傳文件的類(lèi)型
$_FILES["file"]["size"] - 被上傳文件的大小,以字節(jié)計(jì)
$_FILES["file"]["tmp_name"] - 存儲(chǔ)在服務(wù)器的文件的臨時(shí)副本的名稱(chēng)
$_FILES["file"]["error"] - 由文件上傳導(dǎo)致的錯(cuò)誤代碼
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
cookie 常用于識(shí)別用戶(hù)。cookie 是服務(wù)器留在用戶(hù)計(jì)算機(jī)中的小文件。每當(dāng)相同的計(jì)算機(jī)通過(guò)瀏覽器請(qǐng)求頁(yè)面時(shí),它同時(shí)會(huì)發(fā)送 cookie。通過(guò) PHP,您能夠創(chuàng)建并取回 cookie 的值。
setcookie() 函數(shù)用于設(shè)置 cookie。
<?php
setcookie("user", "Alex Porter", time()+3600);
?>
<html>
<body>
</body>
</html>
PHP 的 $_COOKIE 變量用于取回 cookie 的值。
刪除的例子:
<?php
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);
?>
當(dāng)您運(yùn)行一個(gè)應(yīng)用程序時(shí),您會(huì)打開(kāi)它,做些更改,然后關(guān)閉它。這很像一次會(huì)話(huà)。計(jì)算機(jī)清楚你是誰(shuí)。它知道你何時(shí)啟動(dòng)應(yīng)用程序,并在何時(shí)終止。但是在因特網(wǎng)上,存在一個(gè)問(wèn)題:服務(wù)器不知道你是誰(shuí)以及你做什么,這是由于 HTTP 地址不能維持狀態(tài)。
在您把用戶(hù)信息存儲(chǔ)到 PHP session 中之前,首先必須啟動(dòng)會(huì)話(huà)。
注釋?zhuān)?/span>session_start() 函數(shù)必須位于 <html> 標(biāo)簽之前:
存儲(chǔ)和取回 session 變量的正確方法是使用 PHP $_SESSION 變量:
<?php
session_start();
// store session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>
unset() 函數(shù)用于釋放指定的 session 變量:
<?php
unset($_SESSION['views']);
?>
注釋?zhuān)?/span>session_destroy() 將重置 session,您將失去所有已存儲(chǔ)的 session 數(shù)據(jù)。
電子郵件發(fā)送
mail(to,subject,message,headers,parameters)
參數(shù) | 描述 |
---|---|
to | 必需。規(guī)定 email 接收者。 |
subject | 必需。規(guī)定 email 的主題。注釋?zhuān)涸搮?shù)不能包含任何新行字符。 |
message | 必需。定義要發(fā)送的消息。應(yīng)使用 LF (\n) 來(lái)分隔各行。 |
headers |
可選。規(guī)定附加的標(biāo)題,比如 From、Cc 以及 Bcc。 應(yīng)當(dāng)使用 CRLF (\r\n) 分隔附加的標(biāo)題。 |
parameters | 可選。對(duì)郵件發(fā)送程序規(guī)定額外的參數(shù)。 |
不同的錯(cuò)誤處理方法:
簡(jiǎn)單的 "die()" 語(yǔ)句
自定義錯(cuò)誤和錯(cuò)誤觸發(fā)器
錯(cuò)誤報(bào)告
<?php
if(!file_exists("welcome.txt"))
{
die("File not found");
}
else
{
$file=fopen("welcome.txt","r");
}
?>
不同的錯(cuò)誤處理方法:
異常的基本使用
創(chuàng)建自定義的異常處理器
多個(gè)異常
重新拋出異常
設(shè)置頂層異常處理器
PHP 過(guò)濾器用于驗(yàn)證和過(guò)濾來(lái)自非安全來(lái)源的數(shù)據(jù)。
驗(yàn)證和過(guò)濾用戶(hù)輸入或自定義數(shù)據(jù)是任何 Web 應(yīng)用程序的重要組成部分。
設(shè)計(jì) PHP 的過(guò)濾器擴(kuò)展的目的是使數(shù)據(jù)過(guò)濾更輕松快捷。
如需過(guò)濾變量,請(qǐng)使用下面的過(guò)濾器函數(shù)之一:
filter_var() - 通過(guò)一個(gè)指定的過(guò)濾器來(lái)過(guò)濾單一的變量
filter_var_array() - 通過(guò)相同的或不同的過(guò)濾器來(lái)過(guò)濾多個(gè)變量
filter_input - 獲取一個(gè)輸入變量,并對(duì)它進(jìn)行過(guò)濾
filter_input_array - 獲取多個(gè)輸入變量,并通過(guò)相同的或不同的過(guò)濾器對(duì)它們進(jìn)行過(guò)濾
兩種過(guò)濾器:
用于驗(yàn)證用戶(hù)輸入
嚴(yán)格的格式規(guī)則(比如 URL 或 E-Mail 驗(yàn)證)
如果成功則返回預(yù)期的類(lèi)型,如果失敗則返回 FALSE
用于允許或禁止字符串中指定的字符
無(wú)數(shù)據(jù)格式規(guī)則
始終返回字符串
推薦文章
2024-06-27
2024-06-27
2024-06-26
2024-06-25
2024-01-16
2023-12-04
穩(wěn)定
產(chǎn)品高可用性高并發(fā)貼心
項(xiàng)目群及時(shí)溝通專(zhuān)業(yè)
產(chǎn)品經(jīng)理1v1支持快速
MVP模式小步快跑承諾
我們選擇聲譽(yù)堅(jiān)持
10年專(zhuān)注高端品質(zhì)開(kāi)發(fā)聯(lián)系我們
友情鏈接: