
-----------PHP-----------
阿阿阿黄
后续文章更新:https://segmentfault.com/u/aaahuang
展开
-
上传表单
上传文件:原创 2016-07-12 17:26:11 · 435 阅读 · 0 评论 -
正则表达式之量词、元字符、修饰符
原创 2016-10-15 17:26:39 · 1196 阅读 · 0 评论 -
目录和文件中的操作函数
1.basename()功能:返回路径中的文件名部分2.dirname()功能:返回路径中的目录部分3.pathinfo()功能:获取路径文件的信息,对于路径的信息,pathinfo函数创建一个关联数组,其中包括目录名、基本名和扩展名。4.realpath()功能:原创 2016-07-03 18:15:43 · 458 阅读 · 0 评论 -
XML技术
XHTML更严格更纯净的基于 XML 的 HTML 版本。XML DOM访问和操作 XML 的标准文档模型。XSLTXSL 包含三个部分:XSLT - 把 XML 转换为其他格式,比如 HTMLXSL-FO - 用于格式化 XML 文档的语言XPath - 用于在 XML 文档中导航的语言XQuery基于 XML 的用于查询 XML 数据的语言。DT原创 2016-12-07 12:27:44 · 421 阅读 · 0 评论 -
php面向对象中static静态属性和静态方法的调用
<?php /*静态属性和静态方法*/ class StaticExample{public $say="Tom"; static public $aNum=0; static public function sayHello(){ self::$aNum++; echo self::$aNum; //echo $this->$say;错误,静态方法不能访问非静态属性原创 2016-12-07 17:55:48 · 2168 阅读 · 0 评论 -
ob_start,ob_end_clean,ob_get_contents函数
ob_start 打开输出控制缓冲ob_end_clean 清空(擦除)缓冲区并关闭输出缓冲ob_get_contents 返回输出缓冲区的内容<?php/*1.php*/echo '123';?><?php/*2.php*/ob_start(); include_once'1.php';$str=ob_get_contents();?>运行2.原创 2017-01-18 21:22:32 · 789 阅读 · 0 评论 -
MVC入门
举例:把数据库中的数据查询出来(通常是二维关联数组),并在页面中以表格的形式展示。Model.php(模型文件) <?phpclass Model{ public static function getData(){ $data=[ ['id'=>101,'name'=>'Peter','age'=>28,'salary'=>3000], ['id'=>102,'name原创 2017-02-28 21:35:08 · 320 阅读 · 0 评论 -
判断两个浮点数是否相等
在php中,浮点型被称作float,也称做double。在php中有一个浮点数精度问题,手册中是这么描述的:以十进制能够精确表示的有理数如 0.1 或 0.7,无论有多少尾数都不能被内部所使用的二进制精确表示,因此不能在不丢失一点点精度的情况下转换为二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回7 而不是预期中的 8,因为该结果内部的表示其原创 2017-01-21 10:26:16 · 2847 阅读 · 0 评论 -
php 重载
重载的定义:PHP所提供的"重载"(overloading)是指动态地"创建"类属性和方法。我们是通过魔术方法(magic methods)来实现的。当调用当前环境下未定义或不可见的类属性或方法时,重载方法会被调用。NOTE:1.所有的重载方法都必须被声明为public。 2.这些魔术方法的参数都不能通过引用传递。 1.属性重载publicvo原创 2017-02-20 18:34:16 · 422 阅读 · 0 评论 -
php之对象复制
在PHP中可以根据现在的对象克隆出一个完全一样的对象,克隆出来的副本和原本两个对象完全独立而互不干扰。对象复制可以通过 clone 关键字来完成(如果可能,这将调用对象的 __clone() 方法)。对象中的__clone() 方法不能被直接调用。当复制完成时,如果定义了 __clone() 方法,则新创建的对象(复制生成的对象)中的 __clone() 方法会被调用,可用于修改属原创 2017-02-21 09:00:51 · 463 阅读 · 0 评论 -
php后期静态绑定例子讲解
自 PHP 5.3.0 起,PHP 增加了一个叫做后期静态绑定的功能,用于在继承范围内引用静态调用的类。self:: 的限制使用 self:: 或者 __CLASS__ 对当前类的静态引用,取决于定义当前方法所在的类: <?phpclass A { public static function who() { echo __CLASS__; }原创 2017-02-21 17:47:32 · 1321 阅读 · 0 评论 -
php之sprintf()函数
定义和用法sprintf() 函数把格式化的字符串写写入一个变量中。sprintf(format,arg1,arg2,arg++)参数描述format必需。转换格式。arg1必需。规定插到 format 字符串中第一个 % 符号处的参数。arg2可选。规定插到 format 字符串中第二个 % 符号处的参数。a原创 2017-02-03 13:43:17 · 982 阅读 · 0 评论 -
正则表达式基础学习
假设你在一篇英文小说里查找hi,你可以使用正则表达式hi。不幸的是,很多单词里包含hi这两个连续的字符,比如him,history,high等等。用hi来查找的话,这里边的hi也会被找出来。如果要精确地查找hi这个单词的话,我们应该使用\bhi\b。\b 是一个元字符,匹配是否达到了单词的边界(单词分界处)一个单词两边只要没有数字、字母、下划线就可以认为是独立单词,去判断单词前一个字符原创 2017-02-25 11:04:24 · 283 阅读 · 0 评论 -
php正则语法--分隔符
当使用 PCRE 函数的时候,模式需要由分隔符闭合包裹。分隔符可以使任意非字母数字、非反斜线、非空白字符。经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~)。下面的例子都是使用合法分隔符的模式。/foo bar/#^[^0-9]$#+php+%[a-zA-Z0-9_-]%正则表达式中的处理选项,应该放在分割符后面,例如/foo bar原创 2017-02-25 12:07:09 · 1714 阅读 · 1 评论 -
最强大脑(3602017秋招真题)
题目描述小B乘火车和朋友们一起在N市到M市之间旅行。她在路途中时睡时醒。当她醒来观看窗外的风景时,注意到每个火车站都有一种特别颜色的旗帜,但是她看到的旗帜仅仅是经过的一小部分。小B在乘车过程中有两次清醒的时间,她到达旅程终点时处于睡梦中。出站时,她和朋友们谈论着一路的见闻,朋友们觉得很有意思。他们把N到和M之间经过车站的旗帜颜色依次列出来,然后告诉你小B记得的旗帜颜色序列,让你判断小B原创 2017-03-17 08:59:13 · 2266 阅读 · 0 评论 -
文件属性分析
PHP中内置的文件系统操作函数:1.filetype(),获取文件类型。2.filesize()获取文件大小。3.filemtime()获取修改时间。4.fileatime()获取文件的上次访问时间。5.filectime()获取修改时间。6.filegroup()文件的组。7.fileowner()文件的所有者。原创 2016-11-05 19:59:32 · 589 阅读 · 0 评论 -
header()函数的讲解
header()函数的功能是重新导向一个URL,headre()使用时,前面不能有任何数据输出,包括空格。除非使用了输出缓冲。所以一般header()函数的调用放在开头第一行。用法:1.自动跳转header('Location:http://www.baidu.com');//自动跳转到百度2.页面编码的设置/*注意文件编码要与页面编码一致,可以通过选中文件右击Prop原创 2016-07-10 16:28:28 · 2005 阅读 · 0 评论 -
切换zendstudio默认的文件存储位置
有两种方法:1.在软件启动时更改如果你的zendstudio在启动时没提示你选择工作空间的话,你可以在软件启动后点击window->perferences->General->StartupandShutdown->Workspace,这时你会看到右侧顶部有一个启动时提示工作空间复选框没有被选中,将复选框选中点击应用后关闭zend,再次启动的时候他就是提示你选择默认的工作空间了.原创 2016-07-13 10:27:40 · 2701 阅读 · 0 评论 -
数组中的常用操作函数
1.array_unique()功能:移除数组中重复的值,创建一个新数组(返回值为数组),新数组里面重复的已移除,而旧数组保持不变。例:$numbers=array(1,2,3,,3,2,4,5,4);$newnumbers=array_unique($numbers);print_r($newnumbers);2.array_flip功能:交换数组的键和值,返回值类型为数原创 2016-07-01 22:48:56 · 725 阅读 · 0 评论 -
数组的输出
平时用的都是echo这个函数输出,然而对于数组,它无法输出数组的详细内容,只能个输出特定下标的数组元素(如 $a[0])。那么我们就要换种方法来输出数组变量。1.print_r(),var_dump()这两个函数都可以用来输出数组的详细信息。2.each返回数组中当前的键/值对并将数组指针向前移动一步用法举例:$a=array('baidu'=>'李颜红','阿里'=>原创 2016-07-01 12:21:55 · 996 阅读 · 0 评论 -
基本的类函数和对象函数
1.class_exists()功能:检查函数是否存在,返回boolean类型2.get_class()功能:获取对象的类名,如果不是对象,返回false原创 2016-07-18 17:35:33 · 495 阅读 · 0 评论 -
PHP的变量作用范围
对于php中变量的使用,有些不习惯,作为初学菜鸟的我,老是犯错,现在总结了一下,有错的地方欢迎大家的指证。 PHP 中的每个变量都有一个针对它的作用域,它是指可以在其中访问变量(从而访问它的值)的一个领域。对于初学者来说,变量的作用域是它们所驻留的页面。因此,如果你定义了 $var,页面余下部分就可以访问 $var,但是,其它页面一般不能访问它(除非使用特殊的变量)。原创 2016-07-29 12:04:52 · 693 阅读 · 0 评论 -
字符串处理
一.字符串格式化1.ltrim(),rtrim(),trim()文本中的空格在网页上是无效的功能:移除字符串起始处多余空白,移除字符串后面多余空白(包括新行,它的一个别名是chop()),移除字符串两边空白2.nl2br()网页无法解析\n,文本可以。在回帖时,一个回车就是\n功能:函数将字符串作为输入参数,用XHTML中的标记代替字符串中的换行符。3.htmlen原创 2016-07-08 20:55:41 · 468 阅读 · 0 评论 -
处理中文字符
有一些字符串函数不适用于中文,对此php提供了专门的函数来解决这些问题。所有处理中文字符串的函数都是以mb开头的。例如一些函数:mb_strlen(),mb_strpos(),mb_substr().........原创 2016-07-08 21:09:49 · 483 阅读 · 0 评论 -
必须掌握的面向对象中的小概念
1.常量在类外定义常量,用define;在类内定义常量有const。2.类访问与对象访问凡是 需要通过 类来访问的资源,都可以使用范围解析操作符,即一对冒号 ::。以常量为例(常量又称类常量),访问常量:类名::常量;而箭头 -> 是对象访问对象成员的操作符。3.关键字this,self,static(这三个关键字都只能用于类内)访问对象的属性和方法,用this原创 2016-07-30 16:26:40 · 358 阅读 · 0 评论 -
关于 将一个数组赋值给另外一个数组会重置原来数组的指针 的问题
比较好用的数组遍历方法有两种:1.foreach(; ; ;)。 2.list( )搭配each( )。但在each( )函数在运用的时候需要注意一个问题。今天写了个程序,结果就陷入死循环了。代码如下:<?php$fruit = array('a'=>'apple','b'=>'banana');while( list($k,$v) = each($fruit) ){ echo "原创 2016-07-20 10:55:59 · 2980 阅读 · 0 评论 -
实现一个类只能被实例化一次
代码如下:<?phpclass C{ private static $_instance; private function __construct(){ } public static function getInstance(){ if(!(self::$_instance instanceof self)){原创 2016-07-30 17:30:19 · 3556 阅读 · 0 评论 -
PHP的重载
PHP的重载与java中的传统重载完全不同,它不支持java中的的重载方式。传统的重载方式:class Test{ public void sumAll(int a,int b){ //参数数量不同 return a+b; } public void sumAll(int a, int b,int c){ return a+b+c;原创 2016-07-30 21:19:05 · 370 阅读 · 0 评论 -
外部css样式改变,刷新E网页没改变
问题:今天改了一下午的CSS,坑点在于刷新IE浏览器,网页样式一点没变,还以为自己css设置除了问题。删了css样式文件,IE还是原来的界面,原来是IE的缓存在作怪,有毒!解决方法:ctrl+f5,清空缓存。原创 2016-07-20 18:58:28 · 896 阅读 · 0 评论 -
php验证码加载不出来的几点原因
对于验证码加载不出来是个比较头疼的问题,下面有一些原因,大家可以对应看看。PHP验证码加载不成功一: 验证码类的路径引入错误 验证码字体的路径引入错误PHP验证码加载不成功二: 在输出图片的heaer();函数前面加上刷出缓存函数ob_clean();(一般犯这样错误的有很多)PHP验证码加载不成功三: 查看所有文原创 2016-08-01 11:10:15 · 2873 阅读 · 0 评论 -
MYSQL中的基本操作
一.MYSQL数据库的基础操作语法1.创建数据库: CREATE DATABASE 数据库名;2.查看数据库: SHOW DATABASES;3.选择数据库: USE 数据库名;4.删除数据库: DROP DATABASE 数据库名;5.查看数据库中有哪些表: SHOW TABLES;二.MYSQL数据库中的数据表操作原创 2016-07-21 17:58:17 · 412 阅读 · 0 评论 -
php错误处理
错误处理的方式有三种One:显示错误报告Two:记录错误日志(不将错误信息输出的标准输出,而是写到某个文件内)上面两种php系统自动支持的错误处理方式。Three:采用用户自定义的错误处理器,处理错误。显示错误报告:通过下面的错误配置信息完成Error_reporting: 需要报告的错误级别Display_errors::是否显示错误信息可以通原创 2016-08-02 11:09:45 · 379 阅读 · 0 评论 -
PHP自动加载机制
在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。在一个脚本文件中我们需要使用到其他文件中的类时,最简单的做法就是使用require/include将类文件引入。但时当我们需要用到大量的类时,就不得不写很多的require/include语句,同时也可能会造成个别类文件的引入遗漏了。PHP5为这个问题提原创 2017-06-01 10:42:12 · 815 阅读 · 0 评论