PHP有4個用于使用外部函數的函數:include()、include_once()、require()和require_once().
為了使用它們,PHP腳本中將包括如下代碼行:
include_once('arr.php');
require('/path/to/filename.html');
兩種使用外部函數的區別:
使用起來完全一樣,只是在出錯時會有所不同:include()函數不工作,就會向Web瀏覽器打印一個講稿,但是腳本會繼續運行,如果require()失敗,就會打印一個錯誤,并且腳本會終止運行。
這兩個函數還有一個*_once()版本,它們保證被考慮的文件只會會包含一次,而不管腳本可能試圖包含它多次。
eg:
復制代碼代碼如下:
<body>
<?php
require('arr1.php');
include('arrsort.php');
?>
</body>
利用PHP的粘結能力處理HTML表單
<body>
<?php
require('arr1.php'); //先把要執行的文件包含進來
if(isset($_POST['name'])) //判斷是否輸入,然后往下執行..
{
$name=$_POST['name'];
echo "$name";
}
?>
</body>
黏性表單
預先設置文本框中輸入的內容:
<input type="text" name="city" size="20" value="Innsbruck"/>
讓PHP預先設置該值:
<input type="text" name="city" size="20" value="<?php echo $city;?>"/>;
函數
函數名和變量的命名規則相同,但是函數名不區分大小寫。例如:function name() 和function Name()是兩個完全相同的函數。
時期和時間函數
date('format',[timestamp]);
依據指定的格式返回某一日期和時間的文本字符串。timestamp是一個可選項,表示正在考慮的日期從Unix Epoch(Unix時間戳,1970年1月1日0點)起所經過的秒數。它允許你獲得關于特定日期的信息,如星期幾。如果未指定時間戳,PHP就會使用服務器上的當前時間。
字符 |
含義 |
示例 |
Y |
用4位數字表示年 |
2005 |
y |
用2位數字表示年 |
05 |
n |
用1位或2位數字表示月份 |
2 |
m |
用2位數字表示月份 |
02 |
F |
月份 |
February |
M |
用3個字母表示月份 |
Feb |
j |
用1位或2位表示一月中的某一天 |
8 |
d |
用2位數字表示一月中的某一天 |
08 |
l |
星期幾 |
Monday |
D |
用三個字母表示星期幾 |
Mon |
g |
小時,用1位或2位數字表示的12小時格式 |
6 |
G |
小時,用1位或2位數字表示的24位小時格式 |
18 |
h |
小時,用2位數字表示的12小時格式 |
06 |
H |
小時,用2位數字表示的24小時格式 |
18 |
i |
分 |
45 |
s |
秒 |
18 |
a |
am或pm |
am |
A |
AM或PM |
AM |
可以使用mktime()函數找出特定日期的時間戳。
$stamp=mktime(hour,minute,second,month,day,year);
可以使用getdate()函數返回日期和時間的一組值:
$dates=getdate();
echo $dates['month'];
鍵 |
值 |
示例 |
year |
年 |
2005 |
mon |
月 |
12 |
month |
月份名稱 |
December |
mday |
一月中的某一天 |
25 |
weekday |
星期幾 |
Tuesday |
hours |
小時數 |
11 |
minutes |
分鐘數 |
56 |
seconds |
秒數 |
47 |
eg:
復制代碼代碼如下:
<body>
<?php
function md($m=NULL,$d=NULL,$y=NULL)
{
$months=array(1=>'January','February','March','April','May','June','July','Augst','September','October','November','December');
echo '<select name="month">';
foreach($months as $key=>$value)
{
echo "<option value=\"$key\"";
if($key==$m){echo 'selected="selected"';}
echo ">$value</option>\n";
}
echo '</select>';
echo '<select name="day">';
for($day=1;$day<=31;$day++)
{
echo "<option value=\"$day\"";
if($day==$d)
{
echo 'selected="selected"';
}
echo ">$day</option>\n";
}
echo '</select>';
echo '<select name="year">';
for($year=2001;$year<=2015;$year++)
{
echo "<option value=\"$year\"";
if($year==$y)
{
echo 'selected="selected"';
}
echo ">$year</option>\n";
}
echo '</select>';
}
echo '<h1 id="mainhead">select a date:</h1><p><br/><p><form method="post">';
$dates=getdate();
md($dates['mon'],$dates['mday'],$dates['year']);
echo '</form></p><br/></p>';
echo '<p>Today is'.date('l').'. The current time is'.date('H:i a').'.</p>';
?>
</body>
格式化日期函數:
DATE_FORMAT('2005-05-20',%M,%d,%Y);
技巧總結
PHP的日期函數反映了服務器上的事件(因為PHP運行在服務器上);如果想確定客戶計算機上的日期和時間,則需要使用javascript;
checkdate()函數帶3個參數——月份、天和年份——并檢查它是否是一個有效的日期(現在或過去實際存在的日期)。
發送電子郵件
mail($to,$subject,$body);
$to值應該是一個電子郵件地址或一系列地址,中間用逗號隔開。
$subject值將創建電子郵件的主題行,
$body可用于在其中設置電子郵件的內容。
在創建電子郵件正文時,可以在雙引號內使用換行符(\n),使文本分布在多行上。
$mail()函數帶有四個可選參數,用于額外的電子郵件頭部。在此可以設置From(發件人)、Reply-To(回復)、Cc(抄送)、Bcc(密件抄送)以及類似的設置。
eg:
mail('[email protected]','Question regardingScript 3.13',$body,'From:[email protected]');
要在電子郵件中使用多個不同類型的頭部,可以用\r\n把他們隔開:
$headers="From:[email protected]\r\n";
$headers.="Cc:[email protected],[email protected]\r\n";
mail('[email protected]','Question','$body,$headers');