PHP动态创建Web站点

        在这一篇中我写了一些动态创建Web站点的一些内容,例如黏性表单、发送电子邮件、日期函数等。希望能对大家有所帮助,别忘了好评哦。

          PHP4个用于使用外部函数的函数: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 EpochUnix时间戳,1970110点)起所经过的秒数。它允许你获得关于特定日期的信息,如星期几。如果未指定时间戳,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

ampm

am

A

AMPM

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('fanchangfa@126.com','Question regardingScript 3.13',$body,'From:killman@hotmail.com');

 

   要在电子邮件中使用多个不同类型的头部,可以用\r\n把他们隔开:

        $headers="From:John@hotmail.com\r\n";

        $headers.="Cc:jane@hotmail.com,joe@hotmail.com\r\n";

         mail('fanchangfa@126.com','Question','$body,$headers');

         

posted @ 2011-08-13 14:16  非著名程序师  阅读(291)  评论(0编辑  收藏  举报