关于PHP一些常用函数+OOP+jqury.docx
- 文档编号:7965125
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:51
- 大小:55.30KB
关于PHP一些常用函数+OOP+jqury.docx
《关于PHP一些常用函数+OOP+jqury.docx》由会员分享,可在线阅读,更多相关《关于PHP一些常用函数+OOP+jqury.docx(51页珍藏版)》请在冰豆网上搜索。
关于PHP一些常用函数+OOP+jqury
一、基本
8.变量和常量的区别
a.常量前面没有美元符号($);
b.常量只能用define()函数定义,而不能通过赋值语句;
global$_USER;//在PHP中全局变量在使用的时候需要global关键字在函数内部声明下
c.常量可以不用理会变量范围的规则而在任何地方定义和访问;
d.常量一旦定义就不能被重新定义或者取消定义;
e.常量的值只能是标量类型。
13.代码重用(include,require,include_once,require_once)
14.递归调用
15.运算符(算术、递增/递减、比较、逻辑、位、其他)
或&&两边为真才是truen||与一个为真才是truen
条件1?
A:
B条件成立就选则A否侧选B
'.'是连接符
".="是连接赋值
"@"屏蔽错误信息$link=@mySQl_connect(主机,用户名,密码)
16.流程控制(顺序、选择、循环)
--多分枝语句
Switch(){
case;break;
default:
.....;
}
--循环
1、while(){}先判断后循环,for(){}先循环后判断
2、foreach(目标数组as键名=>值名){}遍历数组
3、while/list/each
a、while(list(键名,值名字)=each(目标数组)){}
b、while(list(,值名字)=each(目标数组)){}
***********************************************************
第三单元【字符串】
1.字符串的三种定义方式(单引号、双引号、定界符)
---单引号定义(转义\'和\\)
---双引号定义(转义\n\r\t\$\\\")
---定界符方法<< 1.数组按照键名分索引和关联 2.数组赋值方式(一维、二维) 3.遍历数组方式: foreachwhile/list/each 4.数组和栈的操作 array_push(目标数组,字符串)将字符串压入数组的最后 array_pop(目标数组)将数组最后的元素弹出并返回 5.数组和队列的操作 array_unshift(目标数组,字符串)将字符串放到数组的开始位置 array_shift(目标数组)删除数组的第一个元素并返回 6.数组和指针的操作key()current()next()prev()reset()end() 7.数组常用函数count()、array_sum()、in_array()、extract()、 array_unique()、sort()、rsort()、array_flip()print_r() is_array() isset()检查变量是否被定义 empty()检查变量是否为空 unset()删除变量 8.了解函数array_change_key_case(目标数组,型态常数) 会将目标数组索引值中所有字符串索引的英文字母转换为大写或小写CASE_UPPER/CASE_LOWER array_chunk()分隔数组以指定的个数分割 array_count_values()计算目标数组中各值出现次数 array_filter()利用指定的函数挑选数组元素 数组的合并array_merge()Array_merge_recursive() 差集Array_diff()Array_diff_assoc() 交集array_intersect()Array_intersect_assoc() *********************************************************** 二.PHP常用的函数 一、数组处理函数: array_unique(arr)移除数组中重复的值 array_push(arr,str)将一个或多个单元压入数组的末尾(入栈) array_flip(arr)交换数组中的键和值 array_chunk()将一个数组分割成多个 array_search()在数组中搜索给定的值,如果成功则返回相应的键名 array_combine()创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值 array_values()返回数组中所有的值 array_keys()返回数组中所有的键名 array_merge()合并一个或多个数组 array_merge_recursive()递归地合并一个或多个数组 array_count_values()计算目标数组中各值出现次数 array_unshift($arr,$str);//在一个数组中添加一个字符串并放在元素最前面 array_shift($arr);//删除数组第一个元素并返回该元素 array_pop($arr);//删除数组最后一个元素并返回该元素 array_push($arr,$str,$str1);//将一个或多个字符串压入数组末位(入栈) array_sum()//求数组元素的算术和 get_object_vars()返回由对象属性组成的关联数组 implode(分隔,str)把数组值数据按指定字符连接起来 join——将数组转变为字符串,implode()函数的别名 explode([分隔],arr)按指定规则对一个字符串进行分割,返回值为数组 is_array(arr)检测变量是否是数组 in_array(要检查的值,被检查的数组)检查数组中是否存在某个值 key(arr)返回数组中当前元素的键名 reset(arr)数组的内部指针指向第一个单元 count(arr)计算数组中的单元数目或对象中的属性个数 sort(arr)对数组排序 二、字符串处理函数: trim(str)消除字符串两边的空格 substr(str,start,length)截取指定字符串中指定长度的字符 str_replace(search,replace,str)字符串替换 str_ireplace——像str_replace()函数一样匹配和替换字符串,但是不区分大小写 strpos(str,search)获得指定字符串最开始出现的位置 strrpos(str,search)获得指定字符串最后出现的位置 stripos——查找并返回首个匹配项的位置,匹配不区分大小写 strchr取某字符最后出现的位置,是strstr()的别名 strlen(str)取字符串长度 strcmp(str1,str2)函数用来对两个字符串进行比较 strstr(str,search)获得指定字符串最开始出现到最后的内容 stristr——同strstr(),不同之处在于不区分大小写 strchr()——strstr()函数的别名 strrchr(str,search)获得指定字符串最后出现到最后的内容 substr_count()函数检索子串出现的次数 ucfirst(str)将字符串第一个字符大写 ucwords(str)将字符串每个字的第一个字母大写 strtolower——将字符串转变为小写 strtoupper——将字符串转变为大写 md5——将一个字符串进行MD5算法加密 str_repeat——对字符串进行重复组合 str_split——将一个字符串按照字符间距分割为一个数组 strip_tags——去除一个字符串里面的HTML和PHP代码 strrev——将字符串里面的所有字母反向排列 substr_replace——对字符串中的部分字符进行替换 urlencode(str)替换所有非字母数字的字符,变为%后面跟两位16进制数,空格变为+号 urldecode(str)对已%##编码的URL进行解析还原 parse_url(str)解析完整的url转变为为数组 parse_str(str,out)解析请求字符串转变为数组 htmlspecialchars()转换html代码为实体代码 addslashes——用指定的方式对字符串里面的字符进行转义 stripslashes——反转义addslashes()函数转义处理过的字符串 三、正则相关字符串函数: preg_match(pattern,subject,matches)在subject字符串中搜索与pattern给出的正则表达式相匹配的内容,匹配后的结果存放在matches里边,matches [0]全部匹配内容,matches[1]第一个模式单元matches[1]第二模式单元,以此类推. preg_match_all(pattern,subject,matches)全局匹配,其余的preg_match函数相似 preg_replace(pattern,replacement,str)执行正则表达式的搜索和替换,三种[string,string][array,string][array,array] preg_split() preg_split(pattern,str)用正则表达式分割字符串 preg_grep(pattern,array)用正则表达式匹配数组的值,返回一个新的数组信息 四、mysql数据库相关函数: mysql_connect(主机,用户名,密码)打开一个到MySQL服务器的连接 mysql_select_db(数据库,连接数据库资源)选择MySQL数据库 mysql_query("setnamesutf8");设定字符集 mysql_close(连接数据库资源)关闭MySQL链接 mysql_query(语句)发送一条MySQL查询 mysql_fetch_row(结果资源)从结果集中取得一行结果(索引数组) mysql_fetch_assoc(结果资源)从结果集中取得一行结果(关联数组) mysql_fetch_array(结果资源)从结果集中取得一行结果(索引/关联数组) mysql_fetch_object(结果资源)从结果集中取得一行结果(对象数组) mysql_free_result(结果资源)释放结果集 mysql_num_rows(结果资源)用于计算查询结果中所得行的数目 mysql_affected_rows()获得受影响的结果数目 mysql_insert_id()传回最后一次使用INSERT指令产生的自动增长ID值 mysql_result(结果集,记录数,栏位名称) 五、文件处理函数: file_exists(filename)文件或目录是否存在 filesize(filename)取得文件大小 pathinfo(filename)返回目录名、基本名和扩展名的关联数组 mkdir(dirname)创建目录 rmdir(dirname)删除空目录 basename(D: /index.php),返回路径中文件部分 dirname(D: /a/b/index.php);返回路经中目录部分 fopen(filename,模式)打开文件 fclose(fp)关闭文件 fwrite(fp,str,length)写入文件 file_put_contents(filename,content)把内容存成文件 file_get_contents(filename)从文件读出内容。 本函数实际使用率高。 fread(fp,length)读取文件 fgets()从文件指针中读取一行 fgetc()从文件指针中读取字符 file()把整个文件读入一个数组中,数组中的每个单元都是文件中相应的一行 readfile()读入一个文件并写入到输出缓冲 Realpath("../../index.php")返回规范化的绝对路径名 copy(filename1,filename2)复制文件 unlink(filename)删除文件 rename(filename1,filename2)重命名文件或目录 六、算术函数 rand(1,10);—1-10之间产生一个随机整数 dechex();—十进制转换为十六进制 abs(-4.6)//取得绝对值信息 ceil(4.1)//向上取整 max()//取得最大值 mt_rand(65,94)//获得随机数 round()//四舍五入取整 flush()//输出准备区内容 urlencode('张三')//返回字符串中,除了-_.之外的所有非字母数字部分为%后接两位16进制数,空格转化为+ urldecode()//对已经编码的部分反编码 empty()//判断一个变量是否为空 isset()//判断一个变量是否有设置 unset()//删除一个变量 var_dump()//输出变量的详细信息(八种数据类型数据都可以输出 chr(mt_rand(65,94))随机获得字母 ord(chr(mt_rand(65,94)))将字母转化为数字 basename(路径名)获得路径中文件名部分 strtolower转换小写 七、时间函数 date(format,[timestamp])//格式化时间信息,并返回 time()//返回当前时间戳信息 date_default_timezone_set("asia/shanghai"); mktime(hour,minute,second,month,day,year) mktime(小时,分钟,秒,月,天,年)//取得一个日期的Unix时间戳 八、header()发送http头信息 -header("content-type: text/html;charset=utf-8");-------------------//当前页面输出内容是html,编码为utf-8格式 - -header("content-type: image/pnggifjpeg");----------------------------------//当前页面输出内容的格式是图片 -header("refresh: 5;url= -header("location: 九、九大超级全局数组 $_GET获取地址传参信息 $_POST获取表单数据 $_REQUEST结合了getpost传参方式 $_COOKIE记录客户输入信息存在客户端的cookie $_SESSION记录用户登录信息的存在服务端用于验证客户是否登录Session $_FILES文件上传 $_ENV执行环境提交至脚本的变量 $GLOBALS引用全局作用域中可用的全部变量 $_SERVER服务器和执行环境信息 //本页地址,SCRIPT_NAME也可以: php/test.php echo$_SERVER['PHP_SELF']." //链接到当前页面的前一页面的URL地址: echo$_SERVER['HTTP_REFERER']." //其它的见参考手册: 语言参考》变量》预定义变量 //前执行脚本的绝对路径名: D: Inetpubwwwrootphpest.php echo$_SERVER["SCRIPT_FILENAME"]." //正在浏览当前页面用户的IP地址: 127.0.0.1 echo$_SERVER["REMOTE_ADDR"]." //查询(query)的字符串(URL中第一个问号? 之后的内容): id=1&bi=2 echo$_SERVER["QUERY_STRING"]." //当前运行脚本所在的文档根目录: d: inetpubwwwroot echo$_SERVER["DOCUMENT_ROOT"]." 十、系统常量: __FILE__当前文件名 __LINE__当前行数 __FUNCTION__当前函数名 __CLASS__当前类名 __METHOD__当前对象的方法名 PHP_OS当前系统 PHP_VERSIONphp版本 DIRECTORY_SEPARATOR根据系统决定目录的分隔符/\ PATH_SEPARATOR根据系统决定环境变量的目录列表分隔符;: 三、PHP基础理论(面向对象) 1.基本思想 A1.理解面向对象思想 2.理解类和对象(实例化对象) 3.类的成员属性和方法 4.对象访问成员属性和方法 B1.实例化对象在内存中如何分配 2.对象中成员属性和方法的访问、"$this"关键字使用 3.构造方法和析构方法 a.构造函数: 实例化对象首先第一个需要做的事情就是构造函数。 作用就是初始化对象。 b.析构函数: 一个对象被使用完后需要做一些善后工作,这些善后工作是不需要人为干预的,例如资源释放、变量删除等。 C、OOP的三大特性是什么? 1.封装性: 也称为信息隐藏,就是将一个类的使用和实现分开,只保留部分接口和方法与外部联系,或者说只公开了一些供开发人员使用的方法。 于是开发人员只需要关注这个类如何使用,而不用去关心其具体的实现过程,这样就能实现MVC分工合作,也能有效避免程序间相互依赖,实现代码模块间松藕合。 2.继承性: 就是子类自动继承其父级类中的属性和方法,并可以可以添加新的属性和方法或者对部分属性和方法进行重写。 继承增加了代码的可重用性。 php只支持单继承,也就是说一个子类只能有一个父类。 3.多态性: 子类继承了来自父级类中的属性和方法,并对其中部分方法进行重写。 于是多个子类中虽然都具有同一个方法,但是这些子类实例化的对象调用这些相同的方法后却可以获得完全不同的结果,这种技术就是多态性。 多态性增强了软件的灵活性。 4.访问权限修饰符有哪几种,对比解释 1、public表示公共的,在本类中和子类中以及类外,可以对其调用 2、protected表示受保护的,可以在本类中和子类中调用 3、private表示私有的,只能在本类中调用 4、var,效果等同于public *Class关键词前可以有哪些修饰词 a)Final修饰,表示该类是最终的,无法继承 b)Abstract修饰,表示该类是抽象类 **include()和require()函数的用法和区别是什么? include_once()和require_once()呢? Include(继续)和require(终止)出现错误后的错误级别不一样 include_once()和require_once()在加载之前要判断是否已经导入 5.了解内容__get()、__set() 一个属性被修饰为私有的(private),那么这个属性在类的外部是不可以读取和修改的,现在有一种方法可以设置该属性既是私有的,还可以被类的外部成员读取即__get()和__set() publicfunction__get()访问私有 publicfunction__set()赋值私有 D1.final(最后的)关键字使用 该关键字修饰的类不能被继承 该关键字修饰的方法不能被重写 *什么是伪静态缓存技术有两种一种是php的ob_start()生成还有种是memcache 2.static(静态)关键字使用(类的内部、外部、子类) 实例化对象在内存中的分配有讲到大的数据在内存被分配到堆空间里边。 用static修饰的成员属性,该属性就不是对象的,而是类的。 修饰属性可以用const(define)可以不用$符号 访问直接类名: : 常量名用static修饰的属性方法后该属性方法就归属类本身自己拥有 1再类的的外部访问: 类名: : 属性名(方法名) 2在类的内部访问: self: : 属性名(方法名) 3在子类中访问父类拥有的成员可以用parent关键字parent: : 成员属性在类的外部访问类本身拥有的成员可以这样类名: : 成员属性。 4.const(常量)关键字使用 在php中可以定义常量,类外部用define定义,类内部用const定义。 常量的拥有者是类本身,类内部访问常量用self: : 常量 类外部访问常量用类名: : 常量 子类访问常量parent: : 常量 5.子类继承父类时候成员修饰符限制,子类的修饰级别大于父类。 例如父类的修饰符是protected,则子类修饰级别是protected或public。 父类是public的,子类也必须是public的 2.常用魔术方法触发机制 1)__autoload(): 当程序实例化某个类,而该类没有在当前文件中被引入。 此时会触发执行__autoload()。 程序希望通过该方法,自动引入这个类文件。 该方法有一个参数,即就是那个忘记引入的类的名称。 __autoload()方法的工作原理是什么? 当程序执行到实例化某个类的时候,如果在实例化前没有引入这个类文件,那么就自动执行__autoload()函数。 这个函数会根据实例化的类的名称来查找这个类文件的路径,当判断这个类文件路径下确实存在这个类文件后,就执行include或者require来载入该类,然后程序继续执行,如果这个路径下不存在该文件时就提示错误。 使用自动载入的魔术函数可以不必要写很多个include或者require函数。 2)__construct(): 这个是魔术构造方法。 构造方法是实例化对象的时候自动执行的方法,作用就是初始化对象。 该方法可以没有参数,也可以有多个参数。 如果有参数,那么new这个对象的时候要记得写上相应的参数。 在php5以前,没有魔术构造方法,普通构造方法是一个跟类名同名的方法来实现构造的。 如果一个类中既写了魔术构造方法,又定义了普通构造方法。 那么php5以上版本中,魔术方法起作用,普通构造方法不起作用。 反之,在php5以前版本中,不认识魔术构造方法,只是把该方法当做普通的方法。 3)__destruct(): 这个是魔术析构方法。 析构方法的作用和构造方法正好相反,是对象被销毁时被自动调用的,作用是释放内存。 析构方法没有参数。 4)__call(): 当程序调用一个不存在或不可见的成员方法时,自动触发执行__call()。 它有两个参数,分别是未访问到的方法名称和方法的参数。 而第二个参数是数组类型。 5)__get(): 当程序调用一个未定义或不可见的成员属性时,自动触发执行__get()。 它有一个参数,表示要调用的属性的名称。 6)__set(): 当程序试图写入一个不存在或不可见的成员属性时,PHP就会自动执行__set()
";
";
";
";
";
";
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于 PHP 一些 常用 函数 OOP jqury
![提示](https://static.bdocx.com/images/bang_tan.gif)