黑马程序员PHP培训教程:同步和异步介绍

2024-05-29

黑马程序员PHP培训教程:同步和异步介绍(共4篇)

黑马程序员PHP培训教程:同步和异步介绍 篇1

什么是AJAX 1999年,微软公司发布IE5浏览器的时候嵌入的一种技术。起初名字是XMLHttp,直到2005年,google公司发布了一个邮箱产品gmail,内部的gtalk聊天工具有使用ajax技术,该事情引起人们对ajax的注意,并广泛使用,也使得一蹶不振的javascript语言从此被人们重视起来。

Ajax能实现所有操作都是在不刷新窗口的情况下完成的

同步和异步介绍

同步

客户端在浏览的时候,服务器在等待,服务器在处理请求的时候,客户端在等待,这是同步的。用户体验不好。

异步

客户端将请求的地址交个ajax对象,ajax对象去服务器获取数据,ajax对象获取数据后再将数据交给客户端。这样,浏览器界面没有跳转,所以用户体验比较好。

创建AJAX对象

AJAX的核心就是javascript的XmlHttpRequest对象

1.1.1 主流浏览器创建方法

火狐、google、苹果safari、opera包括IE7以上版本的浏览器

1.1.2 ie6、7、8

实例化ActiveXObject对象的参数有:

var request= new ActiveXObject(“Microsoft.XMLHTTP”);//最原始方式 var request = new ActiveXObject(“Msxml2.XMLHTTP”);//升级 var request = new ActiveXObject(“Msxml2.XMLHTTP.3.0”);//升级 var request = new ActiveXObject(“Msxml2.XMLHTTP.6.0”);//IE维护的最高版本

1.1.3 兼容处理

黑马程序员PHP培训教程:同步和异步介绍 篇2

在vim中存在三种模式:命令模式、末行模式、编辑模式。三个模式之间的相互关系:

2.4、末行模式

默认是命令模式,如果说需要进入到末行模式,则可以在命令模式中按下英文“:”。

2.4.1、保存/另存

保存:

语法::w(write)

另存:

语法: :w 文件的路径

另存的结果:

2.4.2、退出

语法:

:q(quit)

提示:有些时候,如果对当前编辑的文档已经进行了修改,但是又不想保存想直接退出,则可以输入:q!,同样也有:wq!。其中的感叹号表示强制的意思。

2.4.3、查找

语法:

/字符串

对于查找的结果,同样会和打开文件的第三种方式一样,进行高亮显示,可以使用N和n进行上一个和下一个结果的切换。

2.4.4、替换

第一种情况:

语法:

:s/需要替换的字符串/替换成的字符串 一处符合条件的字符串)例如:

第二种情况:

语法:

:s/需要替换的字符串/替换成的字符串/g(替换光标所在行全部符合条件的地方,g表示global)例如:

(表示替换当前光标所在的行的第第三种情况: 语法:

:%s/需要替换的字符串/替换成的字符串(表示替换当前文档中每一行第一个符合条件的地方)例如:

第四种情况: 语法:

:%s/需要替换的字符串/替换成的字符串/g 地方)例如:

黑马程序员PHP培训教程:同步和异步介绍 篇3

类的自动加载: 基本概念:

当在一个代码中,需要使用一个类(比如new),但此时,在这行代码之前,都没有出现过该类的定义,则php有一种机制,可以让系统这个时候去调用一个函数,在该函数中,我们就可以预先写好加载类的代码——这样就实现了类的自动加载。

该函数就是:__autoload()该函数使用形式如下:

function __autoload($class_name){

//这里就可以去写加载类的代码,其中:

//$class_name就代表“正需要”的那个类名;

} [PHP] 纯文本查看 复制代码 ? 1

黑马程序员济南中心 编著

可见,实现这种类的自动加载的方便性,需要做到:

1,类文件名有一个统一的形式:比如:类名.clsss.php

2,统一都放在一个文件夹中;

3,尽可能做到:一个类文件中,只放一个类的定义;

自定义类的加载函数

使用下述函数,可以人为定义“多个”自动加载函数(这些函数的作用跟__autoload)一样。使用形式:

spl_autoload_register(“自动加载函数名1”);

spl_autoload_register(“自动加载函数名2”);

。。

然后就可以去定义这些函数了

在运行的时候,如果需要一个类,就先调用第1个函数去“试图”加载该类,如果在该函数中没有加载成功,就会继续调用下一个函数继续“试图”加载该类,依此类推。。举例:

[PHP] 纯文本查看 复制代码 ? 01

04 spl_autoload_register(“auto1”);

黑马程序员济南中心 编著

05 spl_autoload_register(“auto2”);06 function auto1($class_name){ 07 echo “
进入auto1,需要:$class_name”;08 $file = “./{$class_name}.class.php”;09 if(file_exists($file)){ 10 include_one $file;11 } 12 } 13 function auto2($class_name){ 14 echo “
进入auto2,需要:$class_name”;15 $file = “./{$class_name}.class.php”;16 if(file_exists($file)){ 17 include_one $file;18 } 19 } 20 $obj1 = new A();22 echo “
”;23 var_dump($obj1);24 $obj2 = new B();26 echo “
”;

黑马程序员济南中心 编著 var_dump($obj2);

展示结果为: 进入auto1,需要:A object(A)#1(0){} 进入auto1,需要:B 进入auto2,需要:B object(B)#2(0){}

对象的复制

$obj1 = new A();

$obj2 = $obj1;

//这里,虽然是值传递,但因为对象数据存储的特殊性,并没有复制对象数据本身

//即,并没有生成一个新对象;

要想复制一个对象——得到一个完完全全的相同的对象,只能这样:

$obj3 = clone $obj1;[PHP] 纯文本查看 复制代码 ? 01

黑马程序员济南中心 编著

05 } 06

07 $obj1 = new A();08 $obj2 = $obj1;09 $obj3 = clone $obj1;10 var_dump($obj1);11 var_dump($obj2);12 var_dump($obj3);13 $obj1->p1 = 11;15 var_dump($obj1);16 var_dump($obj2);17 var_dump($obj3);展示效果:

object(A)#1(1){[“p1”]=>int(1)} object(A)#1(1){[“p1”]=>int(1)} object(A)#2(1){[“p1”]=>int(1)}

object(A)#1(1){[“p1”]=>int(11)} object(A)#1(1){[“p1”]=>int(11)} object(A)#2(1){[“p1”]=>int(1)}

黑马程序员济南中心 编著

可见,普通赋值所得到的对象,仍然是原来的对象;

只有clone所得到的对象,才是一个全新的对象; 注意:

1,当对一个对象进行克隆的时候,就会自动调用系统中的__clone()魔术方法(如果有);

2,因此,对于单例类的需求来说,就应该做到:禁止克隆,写法:

private function __clone(){ }

对象的遍历

跟数组类似,对象的“所有属性”,也是可以进行遍历的——一个一个取出。

形式:

foreach($对象 as $prop => $value){

//$prop表示属性名;

//$value表示对应的属性值;

} 注意:

其实能取到的属性数据,只是在该位置可以访问(有权限访问)到的那些。[PHP] 纯文本查看 复制代码 ? 01

黑马程序员济南中心 编著

04 05 class A{ 06 public $p1 = 1;07 protected $p2 08 = 2;09 private $p3 = 3;10 static $p4 = 4;11 function 12 showInfo(){ 13 foreach($this 14 as $prop=>$value){ 16 echo “属性17 $prop = $value”;18 } 19 } 20 } 21

$a1 = new A();foreach($a1 as $prop=>$value){ echo “属性

黑马程序员济南中心 编著

$prop = $value”;}

$a1->showInfo();展示效果: 属性p1 = 1;

属性p1 = 1 属性p2 =2 属性p3 = 3

不知道大家对今天讲的类和对象的其他相关技术学习的怎么样啊?有什么疑问欢迎来黑马程序员济南中心来咨询哟~

黑马程序员PHP培训教程:同步和异步介绍 篇4

目前:jquery是用的最火的一个javascript框架 Prototype:最早一个成熟的JS框架

Jquery,YUI(雅虎),tangram(百度),JX腾讯,kissy阿里 Jqurty:用户多,速度快,文件小,比较复杂的DOM封装

Javascript和jquery:

Js:ECMAscript,BOM,DOM Jq:把BOM和DOM的部分给封装 JQ特点:

资源多,DOM封装,浏览器的兼容

理念:write less,do more 部署: 注意:不管任何时候要写JQ就必须引入,必须最先引入 下载:

Compressed:压缩版本,生产环境

Uncompressed:未压缩版本,开发环境

Jquery-XXXXXX.js:有注释,容易查看代码 Jquery-XXXXXX.min.js;没有注释 开发中:1.x和2.x版本的区别

1.9以下的版本,1.9以上的都不值IE8 例子:

Jquery:核心,内容

语法:$(select).action();Console.log:控制台日志

选择器,事件,DOM,动画,基本操作,插件,ajax 选择器:

选择器:选择页面元素的工具 最早的时候选择器出名

基本选择器:重点

#id:id选择器

Element:元素选择器 Class:类选择器

层级选择器:重点

ancestor descendant:表示选取ancestor里面所有的descendant元素 parent>child:选择parent元素的子元素 selecter+:获取后面的兄弟元素,下一个 selecter~:后去后面的兄弟元素,下所有个

内容选择器:

:Contains(“text”):匹配含有text内容的元素 :empty:匹配内容为空的元素

:has(selecter):选择包含有selecter的选择器 :parent:选择作为父元素的元素

注册验证:

1,鼠标放到email框会提示信息

2,鼠标离开就会检测用户所填写的信息

3,提示信息是灰色字体,检测之后(错误)的字体红色 4,当填写信息正确的时候会出现一个对号(图片)5,提交的时候也会做检测 6,检测全部正确的话就让提交

上一篇:我捡到了一双大黑皮手套作文下一篇:第二学期小学五年级语文教学工作总结