PHP入门速成教程

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的隐含变量,通过使用该变量,我们可以控制是否显示表单还是处理表单结果。

(0)

相关推荐

  • PHP入门速成(3)

    小结 通过以上三步,我们使用PHP快速地在单一页面上实现了表单显示和表单处理的功能. 设定Cookies PHP提供了强大的设定和读取Cookies的功能.在此,我们不想对Cookies进行过多的介绍,但是用户应当认识到在设计WEB应用的过程中Cookies可能起到的重要作用. 用户可以使用PHP提供的setcookie()函数创建或修改Cookie.setcookie()函数总共包括6个参数,能够对cookie进行精确的控制. 使用setcookie()函数设定cookie的最简单的方式为:

  • PHP入门速成(2)

    表单处理 PHP为用户提供了众多方便易用的强大功能.在表单的处理方面,PHP能够自动地将由客户端表单发送的数据赋值给相应变量,从而极大地简化了整个表单的处理过程. 举例来说,用户建立如下表单: < INPUT TYPE=TEXT NAME="name" VALUE="PETER" > 当使用PHP对上述代码进行处理时,PHP自动创建一个名为$name的变量,并将变量值"PETER"赋予该变量. 用户可以直接对PHP创建的变量进行各种操

  • PHP入门速成(1)

    PHP简介 PHP是一种用于创建动态WEB页面的服务端脚本语言.如同ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器.但是与ASP或ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性.用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运

  • PHP速成大法

    简单介绍一下PHP的语法 1.嵌入方法: 类似ASP的<%,PHP可以是<?php或者是<?,结束符号是?>,当然您也可以自己指定. 2.引用文件: 引用文件的方法有两种:require 及 include. require 的使用方法如 require("MyRequireFile.php"); .这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份.常用的函数,亦可以这

  • PHP入门速成教程

    PHP是一种用于创建动态WEB页面的服务端脚本语言.如同ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器.但是与ASP或ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性.用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行.   除

  • 微信小程序开发入门基础教程

    微信小程序开发入门基础教程 本文档将带你一步步创建完成一个微信小程序,并可以在手机上体验该小程序的实际效果. 开发准备工作获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppID . 下载开发工具 下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/dow

  • AngularJs 60分钟入门基础教程

    AngularJs是一个不错的用于开发SPA应用(单页Web应用)的框架.单页Web应用(single page web application,SPA),就是只有一张Web页面的应用.浏览器一开始会加载必需的HTML.CSS和JavaScript,所有的操作都在这张页面上完成,由JavaScript来控制不同view在这个页面上的呈现.本文源于Youtube上一个不错的AngularJs的入门教程视频:AngularJS Fundamentals In 60-ish Minutes,主要讲解了

  • mybatis框架入门学习教程

    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录. 1.创建工程,导入jar包 创建一个java工程或者web工程都可以,然后导入mybatis的jar包和依赖包还有数据库的jar包,本人使用Oracle10g数据库

  • Vue.js快速入门实例教程

    什么是vue vue是法语中视图的意思,Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API. 一.基本结构 index.html代码: <script src="../vue.js"></script> <div id="app"> {{ message }} </div> <script src="app.js"></script> <

  • NodeJS中的MongoDB快速入门详细教程

    MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 一.MongoDB必须理解的概念 1.数据库:每个数据库都有自己的权限和集合. 2.文档:一个键值对. 3.集合:一组文档,即一组键值对.当第一个文档插入时,集合就会被创建. 二.Mac下的MongoDB安装和启动 1.使用brew进行安装:brew ins

  • Python装饰器入门学习教程(九步学习)

    装饰器(decorator)是一种高级Python语法.装饰器可以对一个函数.方法或者类进行加工.在Python中,我们有多种方法对函数和类进行加工,比如在Python闭包中,我们见到函数对象作为某一个函数的返回结果.相对于其它方式,装饰器语法简单,代码可读性高.因此,装饰器在Python项目中有广泛的应用. 这是在Python学习小组上介绍的内容,现学现卖.多练习是好的学习方式. 第一步:最简单的函数,准备附加额外功能 # -*- coding:gbk -*- '''示例1: 最简单的函数,表

  • Ajax入门学习教程(一)

    1 什么是AJAX AJAX(Asynchronous JavaScript And XML)翻译成中文就是"异步Javascript和XML".即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML). AJAX还有一个最大的特点就是,当服务器响应时,不用刷新整个浏览器页面,而是可以局部刷新.这一特点给用户的感受是在不知不觉中完成请求和响应过程. 与服务器异步交互: 浏览器页面局部刷新: 2. 同步交互与异步交互 同步交互:客户端发出一个

  • axios基本入门用法教程

    这篇文章主要给大家介绍了axios基本入门用法教程,下面话不多说,来看看详细的介绍吧. 首先就是引入axios,如果你使用es6,只需要安装axios模块之后 import axios from 'axios'; //安装方法 npm install axios //或 bower install axios 当然也可以用script引入 <script src="https://unpkg.com/axios/dist/axios.min.js"></script&

  • Java Mybatis框架入门基础教程

    一.Mybatis介绍 MyBatis是一款一流的支持自定义SQL.存储过程和高级映射的持久化框架.MyBatis几乎消除了所有的JDBC代码,也基本不需要手工去 设置参数和获取检索结果.MyBatis能够使用简单的XML格式或者注解进行来配置,能够映射基本数据元素.Map接口和POJOs(普通java对象)到数据库中的记录. 二.MyBatis工作流程 (1)加载配置并初始化 触发条件:加载配置文件 配置来源于两个地方,一处是配置文件,一处是Java代码的注解,将SQL的配置信息加载成为一个个

随机推荐