说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

PHP语法基础 -PHP初学入门教程4

HTML文档下载 WORD文档下载 PDF文档下载
PHP数据类型,流程控制等语法基础。

 

4.1 数据类型

 

  PHP支持整数、浮点数、字符串、数组和对象。变量类型通常不由程序员决定而由PHP运行过程决定(真是好的解脱!)。当然,如果你喜欢的话,你也可以使用cast或者函数settype()将某种类型的变量转换成指定的类型。

 

数值

 

  数值类型可以是整数或是浮点数。你可以用以下的语句来为一个数值赋值:

 

$a = 1234; # 十进制数$a = -123; # 负数$a = 0123; # 八进制数 (等于十进制数的83)$a = 0x12; # 十六进制数(等于十进制数的18)$a = 1.234; # 浮点数"双精度数"$a = 1.2e3; # 双精度数的指数形式
字符串
  字符串可以由单引号或双引号引出的字段定义。注意不同的是被单引号引出的字符串是以字面定义的,而双引号引出的字符串可以被扩展。而且,在双引号字符串中可以使用反斜杠()在字符串中加入转义序列和转换字符。举例如下:
$first = 'Hello';$second = "World";$full1 = "$first $second"; # 产生 Hello World$full2 = '$first $second';# 产生 $first $second$full3="01DC studio,." 2000 copyright." " ;
  请注意最后一行,如果需要在字符串中使用双引号,可以使用反斜杠字符,象该行语句所示。这里的的反斜杠用来使双引号的功能改变。   可以将字符和数字利用运算符号连接起来。字符被转化成数字,利用其最初位置。在PHP手册中有详细的例子。 
数组与哈希表
  数组与哈希表以同样的方法被支持。怎样运用取决于你怎样定义它们。你可以用list()或者array()来定义它们,也可以直接为数组赋值。数组的索引从0开始。虽然我在这里没有说明,但是你一样可以轻易的使用多维数组。
// 一个包含两个元素的数组$a[0] = "first"; $a[1] = "second"; $a[] = "third"; // 添加数组元素的简单方法// 现在$a[2]被赋值为"third"echo count($a); // 打印出3,因为该数组有3个元素// 用一个语句定义一个数组并赋值$myphonebook = array ("sbabu" => "5348","keith" => "4829","carole" => "4533");// 噢,忘了教长吧,让我们添加一个元素$myphonebook["dean"] = "5397";// 你定义的carale元素错了,让我们更正它$myphonebook["carole"] => "4522"// 我还没有告诉你怎样使用数组的相似支持方式吗?让我们看一看echo "$myphonebook[0]"; // sbabuecho "$myphonebook[1]"; // 5348 
其他一些对数组或哈希表有用的函数包括sort(),next(),prev()和each()。
对象
  使用new语句产生一个对象: 
class foo {function do_foo () { echo "Doing foo."; }}$bar = new foo;$bar->do_foo();
改变变量类型
  在PHP手册中提到:"PHP不支持(也不需要)直接在声明变量时定义变量类型;变量类型将根据其被应用的情况决定。如果你为变量var赋值为一个字符串,那么它变成了一个字符串。如果你又为它赋了整数值,那么它就变成了整数。"
$foo = "0"; // $foo是字符串(ASCII 48)$foo++; // $foo是字符串"1" (ASCII 49)$foo += 1; // $foo现在是整数(2)$foo = $foo + 1.3; // $foo是一个双精度数(3.3)$foo = 5 + "10 Little Piggies"; // $foo是一个整数(15)$foo = 5 + "10 Small Pigs"; // $foo是一个整数(15)
如果想要强行转换变量类型,可以使用与C语言相同的函数settype()。
4.2 变量与常量
  可能你已经注意到,变量都有一个美元符号($)的前缀。所有变量都是局部变量,为了使得定义的函数中可以使用外部变量,使用global语句。而你要将该变量的作用范围限制在该函数之内,使用static语句。
$g_var = 1 ; // 全局范围function test() {global $g_var; // 这样就可以声明全局变量了}
  更先进一些的是变量的变量表示。请参考PHP手册。这在有时会显得很有用。
  PHP内置了许多已定义的变量。你也可以用define函数定义你自己的常量,比如define("CONSTANT","value")。
4.3 运算符
  PHP具有C,C++和Java中的通常见到的运算符。这些运算符的优先权也是一致的。赋值同样使用"="。
算术和字符
  以下只有一种运算符是有关字符的:
$a + $b :加
$a - $b :减
$a * $b :乘
$a / $b :除
$a % $b :取模(余数)
$a . $b :字符串连接
逻辑和比较
逻辑运算符有:
$a || $b :或
$a or $b :或
$a && $b :与
$a and $b :与
$a xor $b :异或 (当$a或$b为true时为true,两者一样时为false) 
! $a :非
比较运算符有:
$a == $b :相等
$a != $b :不等
$a < $b :小于
$a <= $b :小于等于
$a > $b :大于
$a >= $b :大于等于
与C一样PHP也有三重运算符(?:)。位操作符在PHP同样存在。
优先权
就和C以及Java一样!
4.4 控制流程结构
  PHP有着与C一样的流程控制。我将在下面大概介绍。
if, else, elseif, if(): endif

if (表达式一) 
{
. . .
elseif (表达式二) 
{
. . .
else 
{
. . .
}
// 或者像Python一样
if (表达式一) :
. . .
. . .
elseif (表达式二) :
. . .
else :
. . .
endif ;
Loops. while, do..while, for 
while (表达式) 
{
. . .
}
do 
{
. . .
while (表达式);
for (表达式一; 表达式二; 表达式三) 
{
. . .
}
//或者像Python一样
while (expr) :
. . .
endwhile ;
switch
switch是对多重if-elseif-else结构的最好的替换:
switch ($i) 
{
case 0:
print "i equals 0";
case 1:
print "i equals 1";
case 2:
print "i equals 2";
}
break, continue
break中断当前的循环控制结构。
continue被用来跳出剩下的当前循环并继续执行下一次循环。 require, include
  就像C中的#include预处理一样。你在require中指定的那个文件将替代其在主文件中的位置。在有条件的引用文件时,可以使用include()。这样就使得你可以将复杂的PHP文件分割成多个文件并且在不同需要时分别引用它们。
4.5 函数
  你可以像以下的例子一样定义自己的函数。函数的返回值可以是任何数据类型:
function foo (变量名一, 变量名二, . . . , 变量名n) {echo "Example function.n";return $retval;}
所有PHP代码都可以出现在函数定义中,甚至包括对其他函数和类的定义。函数必须在引用之前定义。
4.6 类
  利用类模型建立类。可以参考PHP手册中对类的详细解释。
class Employee {var $empno; // 员工人数var $empnm; // 员工姓名function add_employee($in_num, $in_name){$this->empno = $in_num;$this->empnm = $in_name;}function show() {echo "$this->empno, $this->empnm";return;}function changenm($in_name){$this->empnm = $in_name;}}$sbabu = new Employee;$sbabu->add_employee(10,"sbabu");$sbabu->changenm("babu");$sbabu->show(); 

 

 

Dell和Intel对OpenStack新兴公司Mirantis投资 快讯:马云自5月10日起不再担任CEO职务 Web工程师必备的43款可视化工具 中国电信天翼开放平台2012年度数据:API调用量破亿 iOS走向开放:UC浏览器iPhone版实现云下载 让Dreamweaver支持cshtml (MVC Razor环境) iOS付费榜首:日历应用Fantastical开发者专访 玩转AdMob移动广告:捕鱼达人的猎财之道 12306抢票插件拖垮GitHub 展望2013 jQuery核心团队成员谈其发展路线 Facebook社交视觉搜索分析:引入“竞价排名”? 移动广告现状5大问题解析 Google将于月底举行Google Glass开发者大赛 分享29个超赞的响应式Web设计 Facebook图谱搜索和谷歌搜索有何不同? Facebook向美国iPhone用户提供免费电话 VMware CTO Steve Herrod离职 加盟风险投资公司 维基百科基金会推出众包旅游项目Wikivoyage 最舒适程序员:工作外包给中国 自己却偷懒 Evernote正在与苹果联合开发硬件记忆工具,未来两年公司上市 Fusion-io发布ioScale 全闪存数据中心时代到来? Agent Dash游戏设计之美:如何用2D打造3D体验? 开源项目文档应规避的13处“硬伤” 李开复:Graph Search将可与谷歌搜索媲美 月成本3500美元 如何在AWS上实现BBVA信用卡低延时分析 外媒眼中的国内互联网巨头:服务器集群庞大但缺乏创新 Facebook主导通用主板+SoC ARM与Intel同台对抗 假如像招聘程序员那样租车…… CrowdStar:Windows Phone 8是开发者的下一片蓝海 腾讯云总经理陈磊透露流量变现计划 将比亚马逊AWS更专注 代码之美——Doom3源代码赏析 老是想来灌水,把这点可用分送光得了,省得挂念 IT老虎,与天为敌快进来,谢谢我只有20多分了,你们一人十分吧,我留点好吧? 如何实现打印,尤其是分页打印? paw_001,paw_001 在马? NetGuardian??哪为兄弟有啊,给我一份copy~~~~~~~~~~~~ 关于自增长字段使用的问题,高手请进 这一贴,分就少点了,就这么多啦 有人能告诉我广东省C程序员与JAVA程序员的薪水比较吗?为什么会有这种差距呢 请问用javaApplet如何控制IE界面? 点对点的讨论 水平考试与资格考试及格分别是多少分? 如何再网页中实现打印功能,份也打印。 我发现了一个网站的BUG,我该怎样进去? 到处都是泡泡,俺看的想吐,晚上再来算了。 怪事, 屏幕变黑白 我的问题_6 MYSQL中like的问题 请教打印预览问题 请问,如果我想把,file edit tools window这个主菜单栏动态去掉,怎么做? 如何用程序代码实现在Memo文本编辑框中被选中的文字加下划线。 怎样分析tcp报文(我很急呀) *.idl文件如何使用? 各位大侠,怎么写一个php在线打分的程序阿? 我测试一下 感兴趣的去试试! IE外壳扩展的程序 Delphi 6.0的一个Bug??? 我怎么把字符串放进缓冲里?急急急!!! 恭喜 zhipop 喜得漂亮的可爱的千金 几个小问题想请教大家 如何将浏览器的地址栏里的IE图标换成自己的图标? r俺明天想去给我的宝马生生级,不算显示器,3000元左右,请各位大侠们赐教该什么配置 2000下写的程序,NT 4.0workstation上为什么不能跑? 启用新主页下载数据窗口编辑器 请教Qbasic中的几个问题..... 用BCB如何向Oracle8.0.5中更新BLOB 用ODBC编程时发现错误:nvarchar 类型无数据类型同其绑定,用CString 出错!如何解决? 救命,救命!!!!!!!!!!!! 【 这两天好像来了很多新人嘛!来报个到吧! 】 请教:如将一个 FormView 的 ScrollBar 去掉 在asp中怎么定义可变长的数组? 关于文本框的问题(你能回答吗?) X档案第三季有一集叫《网络情人》,讲的什么内容? 如何登陆interbase de local server? 确定星座是按农历,还是公历????? 请问哪里能买到苹果7300主板,大概多少钱? vc高手快来帮我 我可以通过style定义普通字体的大小,却不能定义表格中字体的大小 BDE + SQL AnyWhere6.0问题!求救!SOS! 最新消息:泡泡是个PLMM 如何实现关机前所有文挡的自动保存 乐扣塑料杯是pp吗 家用电器知道多少瓦 怎么算出一小时要多少度电?一个家电例如是两千五百W,一个小时用多少电,是怎样算出来的···· 家庭电路中,电压一定220V,电炉子的电阻很大,根据P=U方/R,功率应该很小,但为什么电炉子的功率却很大?而且其他用电器的电阻越大,功率还越大? 乐扣杯子是塑料的对身体有害吗? 1000瓦的电器开1小时一定会用了1°电? 24v的交流电热圈功率是1000瓦,那么电流是多少?能电倒人吗? 乐扣塑料杯装热水有胶味,泡了很久还是有一点.这杯子能装热水喝吗 1000瓦等于多少度电 一个电炉子功率2000瓦每天用5小时一个月按30天计算电费是多少 乐扣水杯是用什么型号的PP材料做成的?聚丙烯(P.P) 是肯定的,问题是那个牌的PP什么型号,为什么材料那么硬还高透明耐高温 1000瓦等于多少瓦 电炉子工作时,是将电能转化成热能,电炉子工作时,是将电能转化成热能;电炉子工作时,是将电能转化成热;电炉子工作时,是将电能转化成内能!哪种说法正确!三者有什么不同? 能不能用冰醋酸腐蚀乐扣杯子的PP材质?如题,另外请问,如果杯子中倒入稀释后的冰醋酸,再倒入食用油,可以阻止它挥发吗? 1000瓦每小时耗多少度电? 一种炉子,电能的!既可以做电煮锅,又可以取暖!不是普通的光波炉之类的,有一定的高度,面积差不多80*80cm 还可以用作打麻将时取暖!知道的朋友介绍一下!最好给个链接!了解功能 价钱...不是电 PP材料的乐扣水杯和PC材料的乐亿多水杯哪个好我要一个可以装开水而且没有气味的 功率1000瓦是一小时用一度电吗?如果不是那是多少? 600瓦电烤火炉每小时用几度电? 乐扣的杯子好么?是塑料的,喝水应该选择乐扣的还是玻璃杯啊?可是现在都说用塑料的好,售货员还说玻璃的过时了 功耗25瓦一小时耗多少度电 我用最大功率1000瓦的电插座,插上一个做饭的电炉,是耗电1000瓦的.用多久拔掉安全点? 乐扣乐扣的 杯子 区别马克陶瓷杯、运动杯、茶水杯...哪个保温效果更好点儿?正品的马克杯225ml的多少钱?PS:乐扣乐扣(lock&lock)Eco环保陶瓷杯SLB003G/370ml(我不是纸杯-时尚环保系列)225ml 和 3000瓦每小时耗多少度电? 减震弹簧是一圈一圈紧挨着,还是一圈一圈有空隙 请问如何洗乐扣的杯子?请问刚买来乐扣的杯子随便洗洗就可以了还是要用洗洁精洗,开水烫之类的.怎样洗完是最干净的?还有上面的一些很讨厌的标签怎么能去除干净啊? 取暖器1000瓦的每小时耗多少电?我这个一档是800,一档是1200.两个档加起来1个小时多少电? 一度电是不是就等于一千瓦 那 乐扣乐扣的杯子好用吗? 一个一千瓦的用电器,一小时用多少度电?哈哈 一千瓦是不是等于一度电?总搞不清,说清原因 乐扣的杯子怎么样 一千瓦的电器连续工作一小时消耗的电能是多少求求你们了 一千瓦一小时几度电 乐扣的杯子好吗? 800瓦的电器一小时会耗多少度电? 多少伏等于一千瓦?一千瓦等于多少电流?同上 1000毫升等于多少重量的水 1500瓦的电器一小时能用几度电 一度电是一千瓦时还是3.6*1000000瓦时 2000瓦功率的电器应该用多少平方的电线 1000瓦等于多少安 一千瓦一个小时一度电如何计算出来的介绍一下这一块儿的..我不是很懂... 功率800瓦的电器工作多长时间消耗1度电 电冰箱的额定功率是70瓦,耗电量是0.5kw.h/24h,问每小时用电量多少,每天用电多少W? 114磅是多少公斤?磅和公斤的换算公式是怎样的呀? 家里能用2000瓦功率的电器吗?我买了个烧烤炉 功率似乎太大了,我用的接线板烧了,后来就没敢再用了.谁知道普通家庭可不可以用2000瓦功率的东西啊?还有是怎么看的,有什么衡量标准的? 功率1000瓦的电器一个小时耗电量是多少 血的单位CC跟毫升跟克是怎么换算的 多少瓦的电器用一个小时是一度电? 请问功率1000瓦的电器,它的电流是多少? 体积CC和毫升怎么换算? 2000瓦功率,多久需1度电? 1安培等于多少瓦? cc和毫升怎么换算啊?cc和毫升有什么关系?它们之间应该怎么换算?2000cc等于多少毫升?急用!谢谢了!~ 乐扣水杯底部三角形内是数字7,盖子内部三角形是5,盖子上显示pp,请问这水杯能装开水吗, 一台功率为500瓦的电器一个小时需要用多少度电? 请问35瓦等于多少安培?1:35瓦等于多少安培?2:蓄电池上标有12v/7ah 请问后面的7ah是什么意思? 假的乐扣杯,底部没有塑料什么标识,这样的杯子有毒吗 电器功率150瓦,一小时消耗几度电? 一安培等于多少瓦
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn