Php重要知识点回顾Word下载.docx
《Php重要知识点回顾Word下载.docx》由会员分享,可在线阅读,更多相关《Php重要知识点回顾Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
如果涉及到变量(需要变动数据),可以这样写
metahttp-equiv=”Content-Type”content=”text/html;
charset=UTF-8”>
$a=“<
”;
$b=”Helloworld!
$c=”I’mabouttolearnPHP!
/*(前面是注释符号)$符号表示这是一个变量,上面的变量可以想象成不断变化的新闻内容,因为新闻内容不断更新,这时用到php就很便捷了,如果这时还是只用html语言来编写网站,不说工作量多大,效率也很低下,这就是我们为什么需要学习php语言的最大原因。
*/
echo$a;
echo$b;
echo$c;
这样数据变动就很方便了,所以,php在网站构成上是很重要的。
以下图简单说明php的工作原理吧:
当你在网站上点击一个链接后,浏览器会发送一个请求(一串地址)给Apache服务器,让它按着这个地址找到浏览器需要的文件,比如说是…/1/2/test.php文件,找到后,如果里面有php语言,就调用php解释器来执行php语言,让他与数据库联系,找到并返回需要的数据,并把这些数据与其他html代码一起形成可以被浏览器识别的代码,我们称这些代码为文档流,当浏览器接收到文档流后,就把他们呈现出来,形成一个网页,这就是我们点击一个链接后跳到另一个网页的整个流程,其中,php语言就是为了处理数据,这很重要,所以我们很有必要学习php语言。
附:
php和html的区别
●Html是与php最大的区别是php能够和数据库交互,从数据库中获取数据,而html只能用来展示得到的数据,像一些公司的网页如果不需要和数据库联系的话,就可以完全由HTML,CSS,JAVASCRIPT来写,形成一个静态的网页,但如果涉及到数据的变动,比如说淘宝网,就需要php与HTML结合起来一起大显身手了。
●HTML中可以套入php语言,在php语言中也可以套入HTML。
比如:
<
echo"
p>
段落<
/p>
?
●注释方法不一样
HTML注释方法是<
!
---->
PHP的注释方法有2中
一.//这是行注释(用来注释一行的)
二./*这是块注释,用来注释好几行的说明
这是块注释,用来注释好几行的说明
这是块注释,用来注释好几行的说明*/
注意不要有嵌套注释,如/*aaaa/*bbb*/ccc*/,这样的注释会出现问题。
第二章函数外部变量和默认值讲解
函数内调用函数外部变量,需要先用global进行声明,否则无法访问,这是PHP与其他程序语言的一个区别。
例一:
$a=1;
functiontest(){
//这里的$a为局部变量,和外面的$a=1没有关系
}
test();
//这里没有输出结果
functiontest2(){
global$a;
//把$a定义为了全局变量,就能够引用外面$a的值了
echo$a;
test2();
//这里输出结果为1
函数括号里面的是默认值,如果没有改变默认值的话,就会输出默认值,
如果默认值被改变,就会输出改变后的值,大家可以对比一下下面的三个小例子
例二:
php
functiontest1($a="
2"
){
Test1();
//结果是2因为默认值为2,没有改变默认值
functiontest2($a="
Test2();
//结果是1默认值被改变
functiontest3($a="
Test3(6);
//结果是6默认值被改变
Php中的关联变量用法
关联参数传递(&
的使用),两种方法。
例:
//方法一:
functiontest(&
$a){
$a.="
和小明"
//实际上是$a=.$a=.”和小明”
$b="
这是小王"
test($b);
echo$b;
//输出这是小王和小明
//方法二:
functiontest($a){
$a.="
//输出这是小王
echo"
test(&
$b);
//输出这是小王和小明
第三章面向对象VS面向过程
面向对象
header("
Content-Type:
charset=utf-8"
);
//写一个关于人的类,“人”有多种属性,在这里把人的名字,年龄,吃的食物当作“人”这个类里面的属性
classpeople{
public$name;
public$height;
public$weight;
//构造方法,也就是函数
publicfunctionintroduce1(){
我的名字是"
.$this->
name;
}
publicfunctionintroduce2(){
echo$this->
name."
身高"
height;
//实例化一个对象,人有多种属性,但那仅仅是人的属性,下面,为这些属性赋值,这样,一个活生生的人就出现了,这就是实例化一个对象(何谓对象?
对象的各个属性有特定的值,把抽象的东西具体化,这样,就是一个活生生的对象)
$people1=newpeople();
$people1->
name="
小明"
height="
180"
introduce1();
//结果:
我的名字是小明
echo'
br/>
'
introduce2();
//结果:
小明身高180
$people2=newpeople();
$people2->
小王"
//结果:
我的名字是小王
height="
175"
小王身高175
先把人的各种属性提取出来,分到一个类里面(呵呵,人类人类,就这样出现了),但现在的这些属性仅仅是属性,是抽象的东西,没有给属性具体的值,就像给你说有个人有身高,有体重,谁知道那个人怎么样?
如果你说小王身高175,体重120斤,这样一个活生生的人就出现在脑海中,这就是实例化一个对象。
面向过程
functionintroduce($name){
echo'
我的名字是'
.$name;
functioneat($name,$food){
echo$name."
爱吃"
.$food;
introduce("
//我的名字是小明
eat("
"
肉"
//小明爱吃肉
第四章数组
1.数组的模式
array(“键”=>
“值”,“键”=>
“值”,“键”=>
“值”)
$a=array("
a"
=>
dog"
b"
cat"
c"
horsr"
print_r($a);
浏览器输出结果
array([a]=>
dog[b]=>
cat[c]=>
horse
以上为一维数组
array(”键”=>
“值”),
”键”=>
...)
此为二维数组
例
若$a为二维数组
则echo$a[键]为一维数组
echo$a[键][键]为一维数组里面的具体的一个值
3.打印数组
$a=array(0=>
helloworld"
print_r($a);
4.打印数组中的特定值
4=>
echo$a[4];
结果为b
第五章php与数据库交互
以下是php与数据库交互的详细流程图
具体代码详解
//连接数据库服务器(服务器有ip地址,有帐号,密码,连接的时候需要写出来)
$con=mysql_connect("
localhost"
peter"
abc123"
//验证是否连接,如果没连接,显示错误信息
if(!
$con)
{
die('
Couldnotconnect:
'
.mysql_error());
//如果没有数据库对方话,就创建数据库,如果创建成功,显示数据库创建成功,否则显示出错的原因
if(mysql_query("
CREATEDATABASEmy_db"
$con))
数据库创建成功"
else
Errorcreatingdatabase:
"
.mysql_error();
//在服务器中选择数据库
mysql_select_db("
my_db"
$con);
//如果没有表格的话就创建表格Persons
$sql="
CREATETABLEnews
(
titlevarchar(15),
autorvarchar(15),
contentvarchar(15),
)"
//上面只是说了一句话,但还没有执行,下面的mysql_query语句就是来执行上面那句话的,这样,就能创建一个表格Persons了,下面就能对数据库进行操作了
mysql_query($sql);
//插入数据
$sql="
insertintonews(title,autor,content)values('
这是第一条新闻'
'
小王'
这是第一条新闻的内容'
//执行上面这句话,就能把数据插入news这个数据表里面了
//查找数据
select*fromnews"
//这是要选择news这个表里面所有的数据,但现在还没有执行这句话
$result=mysql_query($sql);
//执行了上面的命令,得到的数据就全部给了$result,而且这些数据是以数组的形式保存的
while($rs=mysql_fetch_array($result)){//逐行打印,mysql_fetch_array($result)是表示逐行提取数据,如果到了最后一行,就停止,while表示循环函数
print_r($rs);
//表示打印一条数组里面所有数据
echo'
//更新表格数据
updatenewssettitle='
这是新闻标题'
whereid=3"
//删除数据
$sql='
deletefromnewswheretitle="
这是新闻标题"
mysql_close($con);
//断开数据库的连接
第六章表单数据传送
表单
通过表单发送数据一般有post和get方式,下面分别对这两种方式分别进行讲解
表单实例:
formaction="
welcome.php"
method="
post"
姓名:
inputtype="
text"
name="
name"
/>
年龄:
age"
submit"
/form>
上面的HTML页面实例包含了两个输入框和一个提交按钮。
当用户填写该表单并单击提交按钮时,表单的数据会被送往"
这个文件。
文件中代码如下
Welcome<
phpecho$_POST["
];
.<
br/>
Youare<
yearsold.
上面代码输出结果:
WelcomeJohn.
Youare28yearsold.
GET方式
Get方式传输数据有两种方式,第一种是通过链接传送,第二种是通过表单传送
传送方式1
当用户点击提交链接时,发送的URL会类似这样(可以把鼠标放在链接上,仔细观察浏览器左下角的变化):
也有<
ahref=”welcom.php”?
id=”键的名称”>
name=Peter&
age=37表示键为name、age,对应的值为Peter,37,也就是说传送的数据实际上是数组
传送方式2
实际上表单信息的接收发送就是数组的接收发送。
第七章一些知识点的区别联系
1.Session与cookies的联系与区别
Cookies和session是什么?
你浏览QQ空间时,除了开始要输入帐号密码,其他时间都不需要,这是为什么?
因为cookies和session一起合作,
●cookies是保存在浏览器上的文件,用来储存用户信息,比如自己购物时买的东西的信息
●session是保存在服务器段的文件,用来储存用户的机密信息,比如淘宝网的密码
●怎么区别不同的session?
在cookies里面为每个session保留了sessionid(uid)
【浏览器为每个访问者创建一个唯一的sessionid(uid),服务器发送的HTTP请求中会包含SessionID,服务器端根据SessionID获取获取此用户的Session信息.】
2.echo和return的区别
functiontest(){
123"
//打印出123来
test();
//调用这个函数,
结果是在页面上显示123
return"
//把123这个结果返回给函数,但没有打印出来
$a=test();
//调用这个函数
在页面上没有显示信息,因为return只是把123返回给test函数,即使调用了这个函数,也只能说明这个函数里面有123这个值,没有echo的话,就没能显示出来,比如说:
我手上有杯饮料,但我想喝的话,还得把饮料放到我嘴边,就和需要echo才能看见123一样,上面第二的例子之所以没有显示123,不是说函数里面没有123,而是说你根本没有写让123出现的命令(echo)。
这就是echo和return的区别.