|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
让好朋友来看看,嘿,看咱写的多棒,然后再在网上宣传一下。教程|速成 PHP是一种用于创立静态WEB页面的办事端剧本言语。好像ASP和ColdFusion,用户可以夹杂利用PHP和HTML编写WEB页面,当会见者阅读到该页面时,办事端会起首对页面中的PHP号令停止处置,然后把处置后的了局连同HTML内容一同传送到会见真个阅读器。然而与ASP或ColdFusion分歧,PHP是一种源代码开放法式,具有很好的跨平台兼容性。用户可以在Windows NT体系和很多版本的Unix体系上运转PHP,并且可以将PHP作为Apache办事器的内置模块或CGI法式运转。
除可以准确的掌握WEB页面的显示内容以外,用户还可以经由过程利用PHP发送HTTP报头。用户可以经由过程PHP设置cookies,办理用户身份辨认,并对用户阅读页面停止重定向。PHP具有十分壮大的数据库撑持功效,可以会见几近今朝一切较为盛行的数据库体系。另外,PHP可以与多个外接库集成,为用户供应更多的适用功效,如生成PDF文件等。
用户可以直接在WEB页面中输出PHP号令代码,因此不需求任何特别的开辟情况。在WEB页面中,一切PHP代码都被放置在“<?php”和“ ?>”中。另外,用户还可以选择利用诸如<SCRIPT LANGUAGE="php"></SCRIPT>等的模式。PHP引擎会主动辨认并处置页面中一切位于PHP定界符之间的代码。
PHP剧本言语的语法布局与C言语和Perl言语的语法作风十分类似。用户在利用变量前不需求对变量停止声明。利用PHP创立数组的进程也十分复杂。PHP还具有根基的面向对象组件功效,可以极大的便利用户无效组织和封装本人编写的代码。
PHP语法概述
A. 根基语法
即便初度接触PHP的用户也会发明本人对PHP的语法作风其实不生疏。
例如:<?php
echo “Hello!”;
?>
显示了局为“Hello!”。
PHP中,一切的变量都以标识“$”开首。咱们可以对上述代码做以下修改:
<?php
$greeting = “Hello!”;
echo $greeting;
?>
改动后的代码显示了局不变。
PHP中利用“.”符号毗连分歧的字符串,而其它的算术运算符则承继了盛行编程言语的作风。举例以下:
<?php
$greeting = “Hello!”;
$num = 3 + 2;
$num++;
echo “$greeting $num people!”;
?>
显示了局为“Hello!6 people!”。
PHP对各类运算符及运算划定规矩都有一套完全的划定,假如用户具有C或C++言语的编程后台的话,可以发明一切都轻车熟路。
与Perl言语一样,在PHP中,假如在双引号包括的字符串中含有变量的话,该变量将用响应的变量值交换;假如字符串被单引号包括,则不做交换。例如:
<?php
$name = ‘PETER’;
$greeting_1 = “Hello, $name!”;
$greeting_2 = ‘Hello, $name!’;
echo “$greeting_1n”;
echo “$greeting_2n”;
?>
显示了局为:
Hello, PETER!
Hello, $name!
(注:上述代码中的“n”为换行符,只能在双引号字符串下利用)
B. 变量
PHP答应用户象利用惯例变量一样利用情况变量。例如,在页面http://www.nba.com/scores/index.html中包括以下代码:
<?php
echo “[$REQUEST_URI]”;
?>
则输入了局为[/scores/index.html]
C. 数组
用户在利用PHP创立数组时,可以把数组索引(包含惯例索引或联系关系索引)到场方括号中。例如:
$fruit[0] = ‘banana’;
$fruit[1] = ‘apple’;
$favorites['animal'] = ‘tiger’;
$favorites['sports'] = ‘basketball’;
假如用户在向数组赋值时不指明数组下标,PHP将主动把该对象到场到数组末尾。例如关于上述$fruit数组可以用以下体例赋值而坚持了局不变,
$fruit[] = ‘banana’;
$fruit[] = ‘apple’;
一样,在PHP中,用户还可以依据需求创立多维数组。例如:
$people[‘David’][‘shirt’] = ‘blue’;
$people[‘David’][‘car’] = ‘red’;
$people[‘Adam’][‘shirt’] = ‘white’;
$people[‘Adam’][‘car’] = ‘silver’;
在PHP中,用户还可使用array()函数疾速创立数组。例如:
$fruit = array(‘banana’,‘apple’);
$favorites = array(‘animal’ => ‘tiger’, ‘sports’ => ‘basketball’);
或利用array()函数创立多维数组:
$people = array (‘David’ => array(‘shirt’ => ‘blue’,’car’ => ‘red’),
‘Adam’ => array(‘shirt’ => ‘white’,‘car’ => ‘silver’));
另外,PHP还供应了内置函数count()用于盘算数组中的元素数目。例如:
$fruit = array(‘banana’, ‘apple’);
print count($fruit);
显示了局为2。
D. 布局掌握
在PHP中,用户可使用“for”或“while”等的轮回布局语句。例如:
for ($i = 4; $i < 8; $i++) {
print “I have eaten $i apples today.n”; }
或
$i = 4; while ($i < 8) {
print “I have eaten $i apples today.n”;
$i++;
}
前往了局为:
I have eaten 4 apples today.
I have eaten 5 apples today.
I have eaten 6 apples today.
I have eaten 7 apples today.
另外,用户还可使用“if”和“elseif”等的选择性布局语句。例如:
if ($user_count > 200) {
print “The site is busy right now!”;}
elseif ($user_count > 100) {
print “The site is active right now!”;
else {
print “The site is idle - only $user_count user logged on.”;
}
表单处置
PHP为用户供应了浩瀚便利易用的壮大功效。在表单的处置方面,PHP可以主动地将由客户端表单发送的数据赋值给响应变量,从而极大地简化了全部表单的处置进程。
举例来讲,用户创立以下表单:
<INPUT TYPE=TEXT NAME=“name” VALUE=“PETER”>
当利用PHP对上述代码停止处置时,PHP主动创立一个名为$name的变量,并将变量值“PETER”付与该变量。
用户可以直接对PHP创立的变量停止各类操作,例如显示变量值:
echo “Hi $name!”;
或对变量值停止验证:
if ($name == “PETER”) { echo “Please check out your email.”; }
上面,咱们就来看一下若何经由过程利用PHP创立并处置一个根基的表单。在示例傍边,咱们将会请求表单的填写者回覆几个冗长的成绩,包含输出表单填写者的姓名,电子邮件地址,完成查询拜访问卷等。
这里,咱们将所要设计的页面依照功效划分红表单显示和表单处置两个功效模块。如许,用户就不用设计两个分歧的页面,而只需求在统一个PHP页面中经由过程逻辑掌握显示或处置响应的功效模块。
A. 表单显示
咱们经由过程第一个功效模块来完成表单的显示。详细代码为:
<?php
function display_form()
{
global $PHP_SELF;
?>
<FORM TARGET=“<?php echo $PHP_SELF; ?>”METHOD=GET>
Name: <INPUT TYPE=TEXT NAME=“name”><BR>
Favorite Fruit: <INPUT TYPE=RADIO NAME=“fruit” VALUE=“apple”>Apple
<INPUT TYPE=RADIO NAME=“fruit” VALUE=“orange”>Orange
<INPUT TYPE=RADIO NAME=“fruit” VALUE=“banana”>Banana
Favorite Times to Eat Fruit:
<INPUT TYPE=CHECKBOX NAME=“times[]” VALUE=“m”>Morning
<INPUT TYPE=CHECKBOX NAME=“times[]” VALUE=“n”>Noon
<INPUT TYPE=CHECKBOX NAME=“times[]” VALUE=“d”>Dinner
<INPUT TYPE=CHECKBOX NAME=“times[]” VALUE=“l”>Latenight
<INPUT TYPE=HIDDEN NAME=“stage” VALUE= “results”>
<INPUT TYPE=SUBMIT VALUE= “Thanks!”>
</FORM>
<?php
}
?>
上述代码中绝大多半都是创立表单所必须的HTML代码。在此,咱们仅对所触及到的PHP常识做一下复杂引见。
起首,咱们来看一下代码入手下手处的变量$PHP_SELF。变量$PHP_SELF是PHP中一个很便利的指针,其变量值就是以后页面的URL地址。如许,咱们就能够经由过程在随后的form标签中将TARGET的值设定为$PHP_SELF,完成由该表单页面处置表单的目标。这里,咱们利用$PHP_SELF变量而不利用页面的实践地址,是由于经由过程利用$PHP_SELF变量,咱们可以便利对编写的页面代码停止修正和挪动,而不用忧虑在每次修改以后从头输出新的页面地址。
别的,在利用$PHP_SELF变量时,咱们采取了以下体例:
global $PHP_SELF;
这标明代码中的$PHP_SELF变量为全局变量。用户在利用PHP的过程当中必定要注重PHP中任何的函数变量都是部分变量。这就意味着任何函数变量的感化域都只局限于包含该变量的函数自己。即便函数外存在同名变量,变量的值也不不异。因而,假如咱们没有在代码中以显式体例声明函数变量$PHP_SELF为全局变量具有全局独一值的话,用户就会发明函数中的变量$PHP_SELF的值将会为空,而不是咱们事后所希冀确当前页面的URL地址。
用户能够已注重到咱们将表单复选选项的称号设置为times[]数组,而把单选选项的称号设定为fruit惯例变量。这是由于单选选项只答应用户选择独一一个准确选项,因而fruit变量的值只多是一个字符串;相反,复选选项则答应用户做多重性选择。假如,用户但愿PHP可以保留用户能够作出的一切选择的话,就需求利用数组来保留一切的能够值。依照PHP的语律例则,咱们经由过程在变量名times前面加上方括号,使PHP晓得该变量是一个数组变量而不是通俗的惯例变量。
最初,咱们设定了一个名为stage的隐含变量,经由过程利用该变量,咱们可以掌握是不是显示表单仍是处置表单了局。实现固定数量的几张图片的上传;再如调试软件ZendStudio的使用,看了很多次老师的应用,但总感觉用的不顺手,不懂那么多的数据值,到底哪一个才是真正的问题所在;还有如数据库语句的封装,我只会用简单的函数来进行封装。 |
|