篇一:php实例
PHP简单实例
版本历史
版权声明
版权所有,保留一切权利。 未经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档的部分或全部,并以任何形式传播。 ?2012 NANJING XINDA HIGH TECH DEVELOPMENT CO..LTO
第一章 表单验证…………………………………………………………………………………………………………1 1.1 用户登录......................................................................................................................................................................................1 1.2 号码匹配......................................................................................................................................................................................2 第二章 用户注册…………………………………………………………………………………………………………5 2.1 注册界面设计.............................................................................................................................................................................5 2.2 检查用户信息输入....................................................................................................................................................................7 2.3 用户表USER设计....................................................................................................................................................................9 2.4 注册信息处理界面....................................................................................................................................................................9 第三章 图片上传、添加水印和缩小…………………………………………………………………………………..11 3.1 文件上传....................................................................................................................................................................................11 3.2 给图片添加水印 ......................................................................................................................................................................15 3.3 图片缩略图 ...............................................................................................................................................................................15 第四章 绘图、验证码…………………………………………………………………………………………………..17 4.1 PHP中GD库的使用 ..............................................................................................................................................................17 4.2 绘制图像....................................................................................................................................................................................18 第五章 发送短信………………………………………………………………………………………………………..23 5.1 网页向手机发短信两种方式 ................................................................................................................................................23 5.2 短信网关....................................................................................................................................................................................23
5.2.1 短信网关概念 ........................................................................................................................23 5.2.2 短信网关工作原理 .................................................................................................................23 5.2.3 通过短信接口由网页向手机发短信特点 .................................................................................24 5.2.4 PHP调用http接口 .................................................................................................................24
5.3 短信猫 ........................................................................................................................................................................................25
5.3.1 短信猫概念和分类 .................................................................................................................25 5.3.2.通过短信猫由网页向手机发短信特点......................................................................................26 5.3.3.短信猫开发应用方式 ..............................................................................................................26 5.3.4.Linux系统下短信猫发短信解决方案 .......................................................................................26 5.3.5.两种方式差异.........................................................................................................................26
第六章 留言薄配置……………………………………………………………………………………………………..27 6.1配置编译环境 ...........................................................................................................................................................................27 6.2使用PHP语言编写程序 ........................................................................................................................................................27
6.2.1建立index.php ........................................................................................................................27 6.2.2建立send.php .........................................................................................................................28 6.2.3建立reply.php .........................................................................................................................30 6.2.4建立manage.php .....................................................................................................................32 6.2.5建立logout.php .......................................................................................................................34
6.3配置数据库................................................................................................................................................................................34 6.4效果图.........................................................................................................................................................................................35
第一章 表单验证
在使用和存储表单提的数据时,通常对这些数据进行验证,验证的方法很多,例如首先在客户端使用javaScript,但用户可以禁用JavaScript,甚至使用一个不支持JavaScript的浏览器,所以用此方法不够稳妥。
更为稳妥的方式是通过PHP来完成验证。验证表单元素是否为空,首先通过isset()函数检测变量是否甚至,然后通过empty()检测变量是否为空。
1.1 用户登录
创建一个用户登录模块,应用isset()和empty()函数在本页完成对用户登录信息时验证操作,代码如下:
<form id="form1" name="form1" method="post" > <tr>
<td height="30" align="center" class="STYLE1">用户名: <input name="user" type="text" size="16" /> </td> </tr> <tr>
<td height="30" align="center" class="STYLE1">密$nbsp;码:<input name="password" type="password" size="16" /> </td> </tr> <tr>
<td height="30" align="center"><input type="submit" name="Submit" value="登录"/></td>
</tr> </form> <?php
if(isset($_POST['Submit'])){ //判断登录按钮是否设置 $user=$_POST['user']; //获取用户名 $password=$_POST['password'];//获取密码 if(empty($user)||empty($password)){
echo "<script>alert('用户名和密码不能为空!');window.location.href='index.php';</script>";
}else{
echo "输入的用户名为:$user 密码为:$password</br>"; } }
?>
运行效果:
篇二:PHP实例
一、杂七杂八
1.输出变量或表达式内容
<?php
echo "Hello World!";
echo "测试!"
?>
结果:Hello World!测试!
2.获取php配置信息phpinfo();
<?php
echo phpinfo();
?>
结果:显示php配置信息。
3.获取服务器系统时间date(formate)
<?php
echo date('Y-m-d H:i:s'); //formate时间格式
?>
说明:php默认是格林威治时间而不是北京时间,所以当前获得的时间比正确的时间少了8个小时。
解决方法:修改php.ini文件中的设置,找到[date]下的;date.timezone=选项,将该选项修改为date.timezone=Asia/Hong_Kong,然后重启Apache服务器。
4.__FILE__获取目标文件的路径及文件名
<?php
echo __file__;
?>
结果:C:\Apache2.2\htdocs\php_study\index.php
说明:__FILE__为预定义常量
5.区分单引号和双引号的功能。
<?php
$a=100;
echo "输出字符串$a"."<br>";
echo '输出字符串$a';
?>
结果: 输出字符串100
输出字符串$a
6.PHP5.0新型字符串的使用时本实例的关键。PHP5.0这种新型的字符串是以”<<<”开始,后紧跟字符串开始标记,之后为字符串的内容,最后以标记加分号结束。
<?php
$str=<<<mark
<script language="javascript">
alert("欢迎进入PHP编程世界!");
</script>
mark;
echo $str;
?>
7. 类型转换:
(1) 自动转换:+加号两边一边是数字就强制把另一边的字符串自动转换为数字
a. 字符串的中左边第一个不是数字则转换为0
<?php
echo 5+"nihao";
?>
结果:5
b. 字符串的中左边第一个字符时数字则将字符串中相应的数字转换为数字
<?php
echo 5+"10nihao";
?>
结果:15
c. 字符串中左边第一个字符是数字其中包含.看做是小数点浮点数
<?php
echo 5+"5.9nihao";
?> 结果:10.9
(2)强制转换
<1>转换为整型(在变量前加integer或者int)转换规则如下:
1-1浮点数转化为整数。小数点后面的数将被省略。
<?php
$x=23.212;
echo (int)$x;
?>
结果:23
1-2如果浮点数超出整数范围,结果可能是0或者是整型的最小负数。
<?php
$x=1000000000000;
echo (int)$x;
?>
结果: -727379968
2-1布尔型转化为整数。true转化为1,false转化为0
<?php
$x=true; echo (int)$x;
?>
结果:1
3-1字符串转化为整型和自动转化相同
<2>转化为浮点型(方法是在变量前使用float)转化规则如下:
1-1 整型转化为浮点型。其结果不会发生变化
2-1 布尔型转化为浮点型。和整数相同
3-1 字符串类型转化为浮点型。如果字符串中包含小数点”.”,或科学计数法
的”e0或者”E”中的任何一个字符,字符串被当做浮点型处理。否则是为整
型。
<?php
$x="34432.34sfasfdf";
echo (float)$x;
?>
结果: 34432.34
<3>转化成字符串型(方法在变量前使用string),转化规则如下:
1-1 整型或浮点型转化为字符串。
2-1 布尔值转化为字符串型。true转化为字符串”1”,false转化为空字符串””3-1 对象或数组型转化为字符串型。那么转化结果为字符串对象或者字符串数
组。
4-1 资源型转化为字符串型。转化结果为一个类似于”Resource id#”的字符串。在”#”之后是PHP在运行时分配给该资源的标识代号。
<4>转化为布尔型。(在方法前使用boolean或者bool)转化规则如下:
1-1 转化结果为false的情况
整型或者浮点数0
空字符串和字符串”0”
没有任何元素的空数组
没有任何元素的对象
特殊类型NULL
2-1 除了前面1-1中的情况都为true <5> 转化为数组(方法在变量前使用array)转化规则是:将非数组型转化为与原
变量数据类型相同的数组,数组中只有一个元素。
<6>转化为对象(方法在变量前使用object),转化规则是:将非对象类型转化为
一个新对象,其中名为scalar的成员变量将包含原变量。
二、变量
1.变量的命名:以$开头,后面第一个可以是字母或下划线开头,后面可以包含字母、数字或者下划线。变量名中可以使用中文,但是不建议使用。
变量区分大小写
2.变量的作用域
变量的作用域说明
说明:重要的系统变量大家必须牢记:$_FILES、$_POST、$_GET、$_SESSION
4. 可变变量(一个变量的值是另一个变量的地址)的使用
<?php
$x="y";
$y=199;
echo $x."<br>";
echo $$x;
?>
结果:y
199
篇三:PHP5实例教程
2010
09/14
Alacner Zhang
[ PHP类实例教程]
希望这个介绍PHP5面向对象编程(OOP)的资料能让初学者受益,能让更多的PHPer开始转向OOP的编程过程。
目录
开始........................................................................................................................................... 2
类和对象的基础部分 ............................................................................................................... 2
PHP5类中的属性 ..................................................................................................................... 3
PHP5类中的方法 ..................................................................................................................... 5
对象的比较 ............................................................................................................................... 7
构造函数 ................................................................................................................................... 9
类的继承 ................................................................................................................................. 10
访问控制 private, protected, public ...................................................................................... 12
类的重写(override) ........................................................................................................... 14
类中this关键字 ............................................................................................
......................... 15类中parent::关键字 ............................................................................................................... 18
Static的用法 ........................................................................................................................... 20
设计模式之单件模式 ............................................................................................................. 25
final类、final方法和常量 ..................................................................................................... 29
PHP5中的常量 ....................................................................................................................... 30
abstract类和abstract方法 ................................................................................................... 32
设计模式之模版模式 ............................................................................................................. 37
PHP类接口的定义与规范 ..................................................................................................... 38
PHP类接口的实现接口 ......................................................................................................... 40
PHP类接口的继承 ................................................................................................................. 43
类型提示 ................................................................................................................................. 44
PHP抽象类实现接口 ............................................................................................................. 47
开始
从OOP(面向对象)的视角看,不应区分语言。无论是C++、无论是Java、无论是.net还有更多面向对象的语言,只要你了解了OOP的真谛,便可以跨越语言,让你的思想轻松的跳跃。便没有对于Java、.net 、 PHP 之间谁强谁弱的争执了。
希望这个介绍PHP5面向对象编程(OOP)的资料能让初学者受益,能让更多的PHPer开始转向OOP的编程过程。
相对PHP4,PHP5在面向对象方面改变了很多。我们将只介绍PHP5环境下的面向对象。而我们必须改变自己来跟随PHP5的发展。如果代码结果在你的环境下执行不一致,请确认你的环境为PHP5。
我们假设读者没有任何面向对象的知识,即使你是第一次听说OOP,也可以读懂这文章。但我希望你必须对PHP有一些了解。
在后面我们将使用一些例子,来逐渐分析PHP5的OOP基础。
面向对象只解决了两个问题,代码的可扩展性、 代码的可维护性。
下一节我们将学习类和对象基础部分
类和对象的基础部分
Everything is Object:万事万物皆对象
面向对象的编程(OOP)思想力图使对计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。(面向对象语言与我们的生活是相通的,面向对象语言学习起来其实很简单。在应用中更符合我们的生活逻辑。)
Class/Object:类(class)和对象(object)是面向对象方法的核心概念。
类是对一类事物描述,是抽象的、概念上的定义;
(类好像是在图纸上设计的楼房,楼房设计出来了,但这个楼房并不存在。)
对象是实际存在的该类事物的每个个体,因而也称实例(instance)。
(对象是实实在在存在的,照着楼房的设计图纸,高楼盖起来,可以住进去了。在计算机中,可以理解为,在内存中创建了实实在在存在的一个内存区域存储着这个对象。)
创建对象的过程称为创建对象也称为实例化。
看下面的图示,一张楼房的图纸创建了多个别墅(对象)。
思考一下:
它们外观一样么?
它们结构一样么?
它们是一个对象么?
PHP5中的类和对象
我们先建立一个基础的类。
PHP中使用关键字 class 来定义一个类。类的命名一般使用首字符大写,而后每个单词首字符大写连接的方式方便阅读。
<?php
class Person {
}
?>
这样,我们就拥有了第一个PHP类。
我们继续来使用这个类,使用 new 这个关键字创建对象
$p = new Person();
也可以写成
$p = new Person;
但不建议使用后面的这种方式。
PHP5类中的属性
属性:用来描述对象的数据元素称为对象的属性(也称为数据/状态),在PHP5中,属性指在class中声明的变量。在声明变量时,必须使用 public private protected 之一进行修饰,定义变量的访问权限。(public private protected三者的区别将在以后讲解)
属性的使用:通过引用变量的-> 符号调用变量指向对象的属性。
在方法内部通过 $this-> 符号调用同一对象的属性。
<?php
class Person
{
public $name = "NoName"; //定义public属性$name
public $age = 20; //定义public属性$age
}
$p = new Person(); //创建对象
echo " " . $p->name; //输出对象$p的属性$name
echo "<br />";
echo " " . $p->age; //输出$age属性
?>
我们还可以改变属性的值,当然要注意的改变属性的值是通过public来修饰的
我们修改一下这个例子:
<?php
class Person
{
public $name = "NoName"; //公共变量$name
public $age = 20; //公共变量$age
}
$p = new Person();
$p->name = "Tom"; //我是Tom
$p->age = 25 ; //年龄25
echo " " . $p->name; //输出名字
echo "<br />";
echo " " . $p->age; //年龄
?>
创建一个Person的对象,改变这个对象的属性。为它命名,查看它的名字。你就是机器里面这个Person对象的上帝,按照你定义的规则,这个实实在在内存中的Person对象被创建了,而且它有了可以改变的属性。
属性的初值
在PHP5中,在属性定义可以不设置初值,或者赋予以下红色类型的初值。
PHP中简单类型有8种,分别是: