浅谈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的库,结果发现很多东西
Dec 31 PHP
TMDPHP 模板引擎使用教程
Mar 13 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
Apr 15 PHP
解析php通过cookies获取远程网页的指定代码
Jun 25 PHP
php中http与https跨域共享session的解决方法
Dec 20 PHP
php获取指定范围内最接近数的方法
Jun 02 PHP
php实现短信发送代码
Jul 05 PHP
php curl模拟post请求和提交多维数组的示例代码
Nov 19 PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 PHP
PHP实现的曲线统计图表示例
Nov 10 PHP
php实现微信企业转账功能
Oct 02 PHP
PDO实现学生管理系统
Mar 21 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
php中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
编译PHP报错configure error Cannot find libmysqlclient under usr的解决方法
2014/06/27 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
php返回相对时间(如:20分钟前,3天前)的方法
2015/04/14 PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
2015/09/14 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
2017/09/22 PHP
PHP下用Swoole实现Actor并发模型的方法
2019/06/12 PHP
Laravel框架查询构造器 CURD操作示例
2019/09/04 PHP
tp5.1 框架查询表达式用法详解
2020/05/25 PHP
Dom操作之兼容技巧分享
2011/09/20 Javascript
node.js中的forEach()是同步还是异步呢
2015/01/29 Javascript
JavaScript html5 canvas绘制时钟效果(二)
2016/03/27 Javascript
JavaScript作用域示例详解
2016/07/07 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
EasyUI 结合JS导出Excel文件的实现方法
2016/11/10 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
JavaScript自定义函数实现查找两个字符串最长公共子串的方法
2016/11/24 Javascript
JavaScript实现的鼠标响应颜色渐变效果完整实例
2017/02/18 Javascript
webpack打包后直接访问页面图片路径错误的解决方法
2017/06/17 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
vue轮播图插件vue-concise-slider的使用
2018/03/13 Javascript
Vue登录主页动态背景短视频制作
2019/09/21 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
2020/02/24 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
编写Python脚本批量下载DesktopNexus壁纸的教程
2015/05/06 Python
Python3 处理JSON的实例详解
2017/10/29 Python
python如何制作缩略图
2019/04/30 Python
WoolOvers爱尔兰:羊绒、羊毛和棉针织品
2017/01/04 全球购物
在校生钳工实习自我鉴定
2013/09/19 职场文书
大学生入党自我鉴定
2013/10/31 职场文书
公司门卫岗位职责
2014/03/15 职场文书
教师党员承诺书
2014/03/25 职场文书
商务英语专业求职信
2014/06/26 职场文书
使用Djongo模块在Django中使用MongoDB数据库
2021/06/20 Python
Python 实现Mac 屏幕截图详解
2021/10/05 Python