仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1462|回复: 18
打印 上一主题 下一主题

[学习教程] PHP编程:PHP和Mysqlweb使用开辟中心手艺-第1部...

[复制链接]
活着的死人 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:37:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
刚开始因为习惯于ASP格式的写法,总是在这些方面出现问题,自己还总是找不到问题所在,这就提醒了自己,在写代码的时候一定要认真,不能粗心地老是少个“;”或者字母大小写不分,要不然很可能找半天都找不到错误。   次要主题是
.php字符串中的变量扩大体系
.php中可用的更多半据类型
.类型之间的转换
.输出和利用变量和常量
.若何在php中构建表达式和构建表达式所需的操作符
.利用言语中可用的掌握布局
.1 输出字符串的更多引见

复制代码 代码以下:
<?php
$hour = 16;
$kilometres = 4;
$content = "cookie";
echo " 4pm in 24 hour time is {$hour}00 hours.<br/>\n";
echo <<<DONE
There are {$kilometres}000m in {$kilometres}km.<br/>
The jar is now, indeed, full of ${content}s.<br/>
DONE;
?>

输入: 4pm in 24 hour time is 1600 hours.
There are 4000m in 4km.
The jar is now, indeed, full of cookies.
假如你但愿在输入中生成切实的字符序列{$,就需求利用,{\$对它停止本义。
.2 数据类型的更多引见
1.数组:利用array办法来声明数组。它取得一组初始值而且前往保留一切这些值的数组对象,在默许情形下,把从0入手下手的整数称号或键(key)赋给数组中的值
,也能够指定要添加的新项的索引。$frunit[120]="nespola";然而你也能够利用字符串值指定键,而不利用赋值给它的默许数字。
$myfavourite=array("car"=>"ferrari","number“=>21,"city"=>"ouagadougou");

数组运算符 例子 称号 了局
$a + $b 结合 $a 和 $b 的结合。
$a == $b 相等 假如 $a 和 $b 具有不异的键/值对则为 TRUE。
$a === $b 全等 假如 $a 和 $b 具有不异的键/值对而且按次和类型都不异则为 TRUE。
$a != $b 不等 假如 $a 不等于 $b 则为 TRUE。
$a <> $b 不等 假如 $a 不等于 $b 则为 TRUE。
$a !== $b

复制代码 代码以下:
<?php
$a = array("a" => "apple", "b" => "banana");
$b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
$c = $a + $b; // Union of $a and $b
echo "Union of \$a and \$b: \n";
var_dump($c);
$c = $b + $a; // Union of $b and $a
echo "Union of \$b and \$a: \n";
var_dump($c);
?>

履行后,此剧本会显示:
Union of $a and $b: array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" } Union of $b and $a: array(3) { ["a"]=> string(4) "pear" ["b"]=> string(10) "strawberry" ["c"]=> string(6) "cherry" } 2.2.2对象 将在第四单位中面向对象的法式设计中利用。 2.2.3 特别类型和值 NULL 是php中的特别类型和值 ,它暗示"无值".合适以下请求它就是null: .它们被设置为辨别巨细写的关头字null; .它们从没有赋值过 .利用unset办法明白排除了它们。 资本:有时分,php需求处置纷歧定来自php的对象,好比数据库或操作体系对象的句柄。它们称为资本的特别变量.
.3 强迫类型转换
2.3.1 基本
隐式强迫类型转换:当碰见隐式强迫类型转换的最多见的情形是:
.二进制运算操作符
.布尔表达式和表达式操作符
.需求字符串的特定办法--特定办法和操作符,好比echo\print或字符串联接符(.)
显示强迫类型转换:为变量(或表达式)加上括号括起来的类型前缀,php会试图替你停止转换.
(int)\(interger)
(string)-转换为文本字符串
(object)-转换为对象
2.3.2 特别强迫类型转换
转换为整数
(int)4.999
注:null永久都转换为整数值0.
转换为浮点数
(float)true=1.0
把数组、对象或资本转换为浮点值的了局是不决义的,不要试图停止这新的转换或信任如许的转换了局
转换为字符串
可以使用类型转换符(string)或挪用strval把变量转换为字符串.
布尔型true转为字符串1,false被转换空字符串("")
null转为空字符串('").
转换为数组
可以使用类型转换(array)或函数arraryr把变量或表达式转换为数组
null和其他未设置的变量被转换为有0个元素的空数组
转换为对象
你可使用类型转换(object)把变量或表达式转换为对象。
把对象转换为对象仅仅前往不异对象的句柄。为一切其他类型创立stdClass类型的对象。
2.3.3 有效的强迫类型转换函数
is_type()
.is_integer,.is_float,.is_bool,is_null,.is_object.前往布尔型 ,指出特定变量是不是属于恰当的类型 。
gettype()长短常有效的例程,它告知你php以后以为变量或表达式是甚么类型。不保举利用这个转换函数。
settype()利用两个参数:要转换的变量和要转换为的类型 ,它暗示字符串。
.4 变量和常量
2.4.1 界说常量
在php法式中,利用言语布局define界说常量,常量名子不以字符$开首,而且它们的值只能是特定类型:整数、浮点数、字符串和布尔型
2.4.2 按值 和按援用的变量
默许情形下,大多半变量和一切常量是按值赋值的。把一个变量的值赋给另外一个变量是时,其值被复制。这类体例关于除对象外的一切类型合用
关于对象变量和资本,被复制的全体内容是底层对象或资本的句柄,然而操作的底层对象是不异的。
把变量的值赋值给另外一个变量的另外一种选择体例是按援用赋值。用&前缀完成的。
$a=123;
$b=&$a;
2.4.3 变量的局限
函数级其余变量,外部声明的变量只在这个函数外部是正当的。
在函数外声明的变量
超等全局变量
2.4.4 变量的保存期
不论履行不异剧本仍是分歧剧本,php都不会在挪用之间记忆任何内容。
2.4.5 预界说变量
php供应良多预界说变量,它们给出操作情况的信息,大多是超等全局数组例如:
$GLOBALS-它包括正在履行的剧本外部全局可用的一切变量的援用
$_SERVER-剧本地点周边情况的信息
$_SESSION、$_COOKIE-它包括办理会见者和关于称为"cookie“的存储体例的信息
$_REQUEST-它包括$_post、$_GET和$_session数组
$_ENV-它包括php言语引擎地点的历程的情况变量.数组的键是情况变量的称号。
$php_errormsg-它保留php言语引擎在履行以后剧本时生成的最新的毛病信息.
.5 表达式和操作符
2.5.1 操作符:组合表达式
赋值:
算术操作符
例子 称号 了局
-$a 取反 $a 的负值。
$a + $b 加法 $a 和 $b 的和。
$a - $b 减法 $a 和 $b 的差。
$a * $b 乘法 $a 和 $b 的积。
$a / $b 除法 $a 除以 $b 的商。
$a % $b 取模 $a 除以 $b 的余数。
对照操作符

例子 称号 了局
$a == $b 等于 TRUE,假如 $a 等于 $b。
$a === $b 全等 TRUE,假如 $a 等于 $b,而且它们的类型也不异。(PHP 4 引进)
$a != $b 不等 TRUE,假如 $a 不等于 $b。
$a <> $b 不等 TRUE,假如 $a 不等于 $b。
$a !== $b 非全等 TRUE,假如 $a 不等于 $b,或它们的类型分歧。(PHP 4 引进)
$a < $b 小与 TRUE,假如 $a 严厉小于 $b。
$a > $b 大于 TRUE,假如 $a 严厉 $b。
$a <= $b 小于等于 TRUE,假如 $a 小于或等于 $b。
$a >= $b 大于等于 TRUE,假如 $a 大于或等于 $b。
逻辑操作符
例子 称号 了局
$a and $b And(逻辑与) TRUE,假如 $a 与 $b 都为 TRUE。
$a or $b Or(逻辑或) TRUE,假如 $a 或 $b 任一为 TRUE。
$a xor $b Xor(逻辑异或) TRUE,假如 $a 或 $b 任一为 TRUE,但分歧时是。
$a Not(逻辑非) TRUE,假如 $a 不为 TRUE。
$a&& $b And(逻辑与) TRUE,假如 $a 与 $b 都为 TRUE。
$a $b Or(逻辑或) TRUE,假如 $a 或 $b 任一为 TRUE。
按位操作符

操作符 称号 了局
$a & $b And(按位与) 将把 $a 和 $b 中都为 1 的位设为 1。
$a $b Or(按位或) 将把 $a 或 $b 中为 1 的位设为 1。
xor ^ $b Xor(按位异或) 将把 $a 和 $b 中分歧的位设为 1。
Not $a Not(按位非) 将 $a 中为 0 的位设为 1,反之亦然。
$a << $b Shift left(左移) 将 $a 中的位向左挪动 $b 次(每次挪动都暗示“乘以 2”)。
$a >> $b Shift right(右移) 将 $a 中的位向右挪动 $b 次(每次挪动都暗示“除以 2”)。
字符串操作符
毗连操作符. 它对两个字符串停止操作,而且前往把两者毗连在一同的单一字符串
数组操作符

例子 称号 了局
$a + $b 结合 $a 和 $b 的结合。
$a == $b 相等 假如 $a 和 $b 具有不异的键/值对则为 TRUE。
$a === $b 全等 假如 $a 和 $b 具有不异的键/值对而且按次和类型都不异则为 TRUE。
$a != $b 不等 假如 $a 不等于 $b 则为 TRUE。
$a <> $b 不等 假如 $a 不等于 $b 则为 TRUE。
$a !== $b 不全等 假如 $a 不全等于 $b 则为 TRUE。
其他操作符
主动递增和主动递加操作符
$a=10;
$b=$a++; b=10 ,a=11;
$c=++$a; c=12,a=12;
$d=$a--; d=12,a=11;
$e=--$a; e=10,a=10;
还有一个称为@a的操作符,它让php疏忽特定函数挪用的掉败。
最初一个操作符-外壳号令履行法式。为了它,需求把号令括在反撇号(`)之间,如许号令就被传递给处壳履行.但如许会发生平安。
2.5.2 组合表达式和操作符的进程

联合偏向 运算符 附加信息
非联合 clone new clone 和 new
左 [ array()
非联合 ++ -- 递增/递加运算符
非联合 ~ - (int) (float) (string) (array) (object) (bool) @ 类型
非联合 instanceof 类型
右联合 ! 逻辑操作符
左 * / % 算术运算符
左 + - . 算术运算符和字符串运算符
左 << >> 位运算符
非联合 < <= > >= <> 对照运算符
非联合 == != === !== 对照运算符
左 & 位运算符和援用
左 ^ 位运算符
左 位运算符
左 && 逻辑运算符
左 逻辑运算符
左 ? : 三元运算符
右 = += -= *= /= .= %= &= = ^= <<= >>= 赋值运算符
左 and 逻辑运算符
左 xor 逻辑运算符
左 or 逻辑运算符
左 , 多处用到
.6 掌握布局
2.6.1 if语句
1. if (expr)
statement
else
2. elseif/else if 2.6.2 switch语句
复制代码 代码以下:
<?php
if ($a == 5):
echo "a equals 5";
echo "...";
elseif ($a == 6):
echo "a equals 6";
echo "!!!";
else:
echo "a is neither 5 nor 6";
endif;
?>

switch 语句和具有一样表达式的一系列的 IF 语句类似。良多场所下需求把统一个变量(或表达式)与良多分歧的值对照,并依据它等于哪一个值来履行分歧的代码。   这恰是 switch 语句的用处。
复制代码 代码以下:
<?php
if ($i == 0) {
echo "i equals 0";
} elseif ($i == 1) {
echo "i equals 1";
} elseif ($i == 2) {
echo "i equals 2";
}
switch ($i) {
case 0:
echo "i equals 0";
break;
case 1:
echo "i equals 1";
break;
case 2:
echo "i equals 2";
break;
}
?>

2.6.3 while/do ....while轮回
while(expr)
block
do
block
while (expr);

复制代码 代码以下:
<?php
do {
if ($i < 5) {
echo "i is not big enough";
break;
}
$i *= $factor;
if ($i < $minimum_limit) {
break;
}
echo "i is ok";
/* process i */
} while(0);
?>

2.6.4 for 轮回
for(expr1;expr2;expr3)
block
expr1:当第一次碰到FOR轮回履行它一次。履行终了后入手下手轮回迭代。
expr2:在每次迭代之前盘算它。如为true,就履行代码块。
expr3-在每次迭代以后盘算它
复制代码 代码以下:
<?php
/* example 1 */
for ($i = 1; $i <= 10; $i++) {
echo $i;
}
/* example 2 */
for ($i = 1; ; $i++) {
if ($i > 10) {
break;
}
echo $i;
}
/* example 3 */
$i = 1;
for (;;) {
if ($i > 10) {
break;
}
echo $i;
$i++;
}
/* example 4 */
for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);
?>

2.6.5 foreach轮回:用于特定类型。在5单位中停止更多解说
2.6.6 中止轮回 :break 和continue
学习如何将PHP与HTML结合起来完成简单动态页面
第二个灵魂 该用户已被删除
沙发
发表于 2015-2-4 03:53:38 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
爱飞 该用户已被删除
板凳
发表于 2015-2-19 21:18:49 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
柔情似水 该用户已被删除
地板
发表于 2015-2-27 07:09:19 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
冷月葬花魂 该用户已被删除
5#
发表于 2015-3-8 23:05:28 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
海妖 该用户已被删除
6#
发表于 2015-3-17 23:36:23 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
谁可相欹 该用户已被删除
7#
发表于 2015-3-25 07:30:19 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
简单生活 该用户已被删除
8#
发表于 2015-4-1 19:38:33 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
透明 该用户已被删除
9#
发表于 2015-4-2 19:29:39 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
小妖女 该用户已被删除
10#
发表于 2015-4-4 18:24:37 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
飘灵儿 该用户已被删除
11#
发表于 2015-4-10 07:27:45 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
小女巫 该用户已被删除
12#
发表于 2015-4-24 00:54:11 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
深爱那片海 该用户已被删除
13#
发表于 2015-5-10 10:16:04 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
精灵巫婆 该用户已被删除
14#
发表于 2015-6-11 13:52:42 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
莫相离 该用户已被删除
15#
发表于 2015-7-3 01:21:00 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
不帅 该用户已被删除
16#
发表于 2015-7-12 11:17:23 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
若天明 该用户已被删除
17#
发表于 2015-7-14 15:39:26 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
飘飘悠悠 该用户已被删除
18#
发表于 2015-7-15 08:31:23 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
admin 该用户已被删除
19#
发表于 2015-7-24 08:06:12 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-29 06:57

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表