浅谈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 相关文章推荐
数据库的日期格式转换
Oct 09 PHP
浅析php过滤html字符串,防止SQL注入的方法
Jul 02 PHP
PHP图片上传代码
Nov 04 PHP
Yii分页用法实例详解
Dec 04 PHP
ThinkPHP入口文件设置及相关注意事项分析
Dec 05 PHP
php检查日期函数checkdate用法实例
Mar 19 PHP
PHP7.0版本备注
Jul 23 PHP
Yii2 assets清除缓存的方法
May 16 PHP
php利用嵌套数组拼接与解析json的方法
Feb 07 PHP
php设计模式之策略模式应用案例详解
Jun 17 PHP
Thinkphp页面跳转设置跳转等待时间的操作
Oct 16 PHP
laravel框架语言包拓展实现方法分析
Nov 22 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分页实例代码分享
2011/07/28 PHP
PHP开发框架kohana3 自定义路由设置示例
2014/07/14 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
Yii框架的布局文件实例分析
2019/09/04 PHP
js和as的稳定传值问题解决
2013/07/14 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
Nodejs如何复制文件
2016/03/09 NodeJs
AngularJS directive返回对象属性详解
2016/03/28 Javascript
AngularJs 指令详解及示例代码
2016/09/01 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
js自定义瀑布流布局插件
2017/05/16 Javascript
React 组件转 Vue 组件的命令写法
2018/02/28 Javascript
Vue 动态设置路由参数的案例分析
2018/04/24 Javascript
Javascript实现异步编程的过程
2018/06/18 Javascript
小程序scroll-view安卓机隐藏横向滚动条的实现详解
2019/05/16 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
js实现视图和数据双向绑定的方法分析
2020/02/05 Javascript
Postman如何实现参数化执行及断言处理
2020/07/28 Javascript
[02:47]DOTA2亚洲邀请赛 HR战队出场宣传片
2015/02/07 DOTA
[01:03:13]VG vs Pain 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python抓取京东图书评论数据
2014/08/31 Python
Python实现简单的代理服务器
2015/07/25 Python
python Web开发你要理解的WSGI &amp; uwsgi详解
2018/08/01 Python
对Python random模块打乱数组顺序的实例讲解
2018/11/08 Python
对Python3 goto 语句的使用方法详解
2019/02/16 Python
基于python实现把图片转换成素描
2019/11/13 Python
python判断无向图环是否存在的示例
2019/11/22 Python
Python Django form 组件动态从数据库取choices数据实例
2020/05/19 Python
python文件操作seek()偏移量,读取指正到指定位置操作
2020/07/05 Python
python3.9和pycharm的安装教程并创建简单项目的步骤
2021/02/03 Python
全球500多个机场的接送服务:Suntransfers
2019/06/03 全球购物
2014年祖国生日寄语
2014/09/19 职场文书
2015秋季开学典礼致辞
2015/07/16 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
Python 发送SMTP邮件的简单教程
2021/06/24 Python
Android Studio实现带三角函数对数运算功能的高级计算器
2022/05/20 Java/Android