浅谈PHP语法(1)


Posted in PHP onOctober 09, 2006

作者:华红狼
正文:
  《谈谈HTML语法》一文,我已经介绍了基本的HTML语法。可以编出一个静态的Web页,可动态交互信息是很重要的。如一些网站的会员制??的会员注册、登录都需后端程序的运行。很多网站所用的CGI程序主要用Perl、ASP、Java、PHP编写,而我们所要用的就是PHP。它是完全免??费的,这就要感谢那些默默无闻的编程人员了。PHP的结构类似于C语言,这可是应证了C语言里提的“一处学习,到处编程”。相信学过C??语言的人可很容易上手PHP的。还是先介绍一些PHP语法吧。本文适合初学者学习。
  PHP与C语言也有一些差别,或者说在某种程度上可能比C语言更为灵活。在C语言中,变量要先定义,才能使用。而PHP中变量则不需??事先定义,直接使用即可。对于变量的类型,在赋值时自动生成。PHP变量的类型分为:整数(int)、双精度型(double)、字符串(string)、??数组(array)、对象(object)。
  整数大小超出其范围后,自动转化为双精度型,其值范围如下表:
┌─────┬─────┬──────┬────────────┐
│ 声明类型 │长度(位)│长度(字节)│    值的范围     │
├─────┼─────┼──────┼────────────┤
│  int  │  32  │  4   │-2147483647~2147483647 │
├─────┼─────┼──────┼────────────┤
│  double │  32  │  4   │ 1.7E-308~1.7E+308   │
└─────┴─────┴──────┴────────────┘
  字符串,通常用""(双引号)表示。也可用''(单引号)表示,如下:
  $a="abc";
  $b="abc$a";
  $c='abc$a';
  $d="\"cde\"";
  $e='"cde"';
  PHP中的各种变量均在变量名前加上“$”以示区别。
  注意,$b的内容为abcabc,$c的内容为abc$a,$d的内容为"cde",$e的内容也为"cde"。可以看出,双引号中的内容中的变量名会被替代??,而单引号中的则不会。双引号中的内容需转义,如$应用\$表示,而单引号中的则不用。
  PHP中的数组语法为:
  数组名[索引]
  索引可为数字,也可为文字。但不建议使用文字,因为意义不大。对于数组也比其它语言灵活如下例:
<?php
$names[]=100;
$names[]=200;
$names[]="hi,how are you";
$names[]=98.5;
$names[]=1.7E+23;
$num=count($names);
for ($i=0;$i<=$num;$i++){
echo "$names[$i]<br>";
        }
?>
  可看出,一个数组中的元素不一定为同一类型,这就是PHP数组的“活”处。
  使用对象,可使编程者更易于维护,也使程序更为易读。较其它语言,PHP可简单多了,它只有类别(class)、方法(method)、属性(attr??ibute)及扩展(extendsions)等。

  前文谈的只是PHP的数据类型,所谓“磨刀不误砍柴功”,打好PHP基础才能更好地学好PHP编程。
  PHP中的表达式与运算符与C语言的差别不大,现将其列表于下:
┌─────┬─────────┬──────────┐
│ 符 号 │   运算符   │  范 例     │
├─────┼─────────┼──────────┤
│  +   │   加法    │  $a+$b      │
├─────┼─────────┼──────────┤
│  -   │   减法    │  $a-$b      │
├─────┼─────────┼──────────┤
│  *   │   乘法    │  $a*$b      │
├─────┼─────────┼──────────┤
│  /   │   除法    │  $a/$b      │
├─────┼─────────┼──────────┤
│  %   │   取余数   │  $a%$b      │
├─────┼─────────┼──────────┤
│  ++   │   递增    │ $a++或++$a    │
├─────┼─────────┼──────────┤
│  --   │   递减    │ $a--或--$a    │
├─────┼─────────┼──────────┤
│  ==   │   等于    │ $a==10       │
├─────┼─────────┼──────────┤
│  ===  │   绝等于   │ $a===10      │
├─────┼─────────┼──────────┤
│  !=   │   不等于   │ $a!=10       │
├─────┼─────────┼──────────┤
│  <   │   小于    │ $a<9        │
├─────┼─────────┼──────────┤
│  >   │   大于    │ $a>8        │
├─────┼─────────┼──────────┤
│  <=   │  小于等于   │ $a<=10       │
├─────┼─────────┼──────────┤
│  >=   │  大于等于   │ $a>=1       │
├─────┼─────────┼──────────┤
│  =   │ 相等赋值运算符 │ $a=0        │
├─────┼─────────┼──────────┤
│  +=   │ 加法指定运算符 │ $a+=5       │
├─────┼─────────┼──────────┤
│  -=   │ 减法指定运算符 │ $a-=1       │
├─────┼─────────┼──────────┤
│  *=   │ 乘法指定运算符 │ $a*=2       │
├─────┼─────────┼──────────┤
│  /=   │ 除法指定运算符 │ $a/=5       │
├─────┼─────────┼──────────┤
│  %=   │ 余数指定运算符 │ $a%=7       │
├─────┼─────────┼──────────┤
│  .=   │ 字符串指定运算符│ $a.="hello"    │
├─────┼─────────┼──────────┤
│  &   │ 与       │ $a&$b       │
├─────┼─────────┼──────────┤
│  |   │ 或       │ $a|$b       │
├─────┼─────────┼──────────┤
│  ^   │ Xor       │ $a^$b       │
├─────┼─────────┼──────────┤
│  ~   │ 非        │~$a(取1的补码   )│
├─────┼─────────┼──────────┤
│  <<   │ 向左移位     │ $a<<$b       │
├─────┼─────────┼──────────┤
│  >>   │ 向右移位     │ $a>>$b       │
├─────┼─────────┼──────────┤
│and或&&  │ 与       │$a and $b或$a&&$b  │
├─────┼─────────┼──────────┤
│or或||  │ 或       │$a or $b或$a||$b  │
├─────┼─────────┼──────────┤
│xor    │ Xor       │   $a xor $b   │
├─────┼─────────┼──────────┤
│  !   │ 非       │    !$a     │
└─────┴─────────┴──────────┘
┌───┬────────────┐
│符号 │ 意义说明       │
├───┼────────────┤
│ $  │变量          │
├───┼────────────┤
│ &  │变量的指针(加在变量前)│
├───┼────────────┤
│->  │对象的方法或属性    │
├───┼────────────┤
│=>  │数组的元素值      │
├───┼────────────┤
│? :  │三元运算符       │
└───┴────────────┘
  同C语言的比较一下吧。其中只是多了个“.”这一个运算符。它的作用是使两个字符串相连,如下例,显示结果为hello,my baby.
<?php
$a="hello,";
$b="my baby.";
echo $a.$b;
?>
  还有一个符号也使PHP的功能强大了。这就是“$”。它是用于变量之前的,表示这是个变量,如$A,$b等。那它的作用又强在哪呢?这??就是变量的变量。
  如下例:
  <?php
$a="go";
$$a="here";
echo $a;
echo $$a;
echo $go;
?>
  显示结果为:
go
here
here
  其实,在一个变量前加一个“$”,就是把这个变量的内容作为了一个新的变量名。这是PHP所特有的,有时可使程序简单化。
--(待续)--

PHP 相关文章推荐
PHP+DBM的同学录程序(2)
Oct 09 PHP
PHP教程之PHP中shell脚本的使用方法分享
Feb 23 PHP
PHP--用万网的接口实现域名查询功能
Dec 13 PHP
php中函数前加&amp;符号的作用分解
Jul 08 PHP
php操作xml入门之xml标签的属性分析
Jan 23 PHP
php 批量查询搜狗sogou代码分享
May 17 PHP
php操作memcache缓存方法分享
Jun 03 PHP
php类的定义与继承用法实例
Jul 07 PHP
PHP Web木马扫描器代码分享
Sep 06 PHP
总结对比php中的多种序列化
Aug 28 PHP
PHP实现求两个字符串最长公共子串的方法示例
Nov 17 PHP
PHP高并发和大流量解决方案整理
Dec 24 PHP
PHP 和 MySQL 基础教程(一)
Oct 09 #PHP
用文本作数据处理
Oct 09 #PHP
在线竞拍系统的PHP实现框架(二)
Oct 09 #PHP
php中的时间处理
Oct 09 #PHP
用php写的serv-u的web申请账号的程序
Oct 09 #PHP
PHP系统流量分析的程序
Oct 09 #PHP
PHP的栏目导航程序
Oct 09 #PHP
You might like
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
hover的用法及live的用法介绍(鼠标悬停效果)
2013/03/29 Javascript
判定是否原生方法的JS代码
2013/11/12 Javascript
LABjs、RequireJS、SeaJS的区别
2014/03/04 Javascript
对 jQuery 中 data 方法的误解分析
2014/06/18 Javascript
javascript实现链接单选效果的方法
2015/05/13 Javascript
jquery插件之文字间歇自动向上滚动效果代码
2016/02/25 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
2016/04/01 Javascript
jQuery的promise与deferred对象在异步回调中的作用
2016/05/03 Javascript
快速解决js开发下拉框中blur与click冲突
2016/10/10 Javascript
JavaScript 获取元素在父节点中的下标(推荐)
2017/06/28 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
基于jquery trigger函数无法触发a标签的两种解决方法
2018/01/06 jQuery
vue实现2048小游戏功能思路详解
2018/05/09 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
2018/11/30 Javascript
Node.js 路由的实现方法
2019/06/05 Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
2020/08/19 Javascript
[51:07]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python使用wxpy实现微信消息防撤回脚本
2019/04/29 Python
python 计算一个字符串中所有数字的和实例
2019/06/11 Python
Python实现语音识别和语音合成功能
2019/09/20 Python
在Python中利用pickle保存变量的实例
2019/12/30 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
微信小程序之html5 canvas绘图并保存到系统相册
2019/06/20 HTML / CSS
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
法国床上用品商店:La Compagnie du lit
2019/12/26 全球购物
正风肃纪剖析材料
2014/02/18 职场文书
会计专业自荐信
2014/06/03 职场文书
安全生产宣传标语
2014/06/06 职场文书
2014党委书记四风问题对照检查材料思想汇报
2014/09/22 职场文书
群众路线查摆问题整改措施
2014/10/10 职场文书
幼儿园大班教师个人工作总结
2015/02/05 职场文书
离婚案件被告代理词
2015/05/23 职场文书
mysql数据库入门第一步之创建表
2021/05/14 MySQL