方法一: $text = ‘数组aabbccdd’; $text_filter = ”; $filter = array(); $len = mb_strlen($text, ‘utf-8′); for ($i = 0; $i<$len; $i++) { $char = mb_substr($text, $i, 1, ‘utf-8′); if (!isset($filter[$char])) { $text_filter .= $char; $filter[$char] = $char; } } echo $text_filter; 方法二: $string= ‘数组aabbccdd’; function str_split_utf8($str) { $split=1; $array = array(); for ( $i=0; $i < [...]
Category Archives: php
php5中三种数据类型的区别
今天也没有想好写点什么,那就来说说public、protected、private三种类型的关系吧 public: 公有类型 在子类中可以通过self::var 来调用 public类型的方法或属性 可以通过parent::method 来调用父类中的方法 在实例中可以能过$obj->var 来调用 public类型的方法或属性 protected: 受保护类型 在子类中可以通过self::var 来调用 protected类型的方法或属性 可以通过parent::method 来调用父类中的方法 在实例中不能通过$obj->var 来调用 protected类型的方法或属性 private: 私有类型 该类型的属性或方法只能在该类中使用,在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法
用PHP将数组转为XML格式输出
在实现的开发工作中,常常会遇到用AJAX来取代原先Form提交的数据,返回一个值很简单,如果返回很多的时候就要用到数组了。下面我来用一个PHP类,来将获取到的数据用XML格式返回给页面。 首先说一点,这个类支持将一个多维数组转换为XML格式; 数组的index值将作为XML的节点名,数组每项的值将作为XML节点的内容。 PHP内建支持DOM对象,我们就通过DOM来操作XML PHP创建DOM对象的语句是 $dom = new DOMDocument(’1.0′,’utf-8′); 创建一个DOM节点的语句是 $element = $dom->createElement($elementName); 给节点添加内容的语句是 $element->appendChild($dom->createTextNode($value)); 最后将节点添加到DOM中 $dom->appendChild($element);
php中下面哪个语法不正确
$obj=[]; $obj={}; $obj=(); $obj=//; 哪个语法不正确? 有正确的吗,没有,都是错误的,哈哈
获取图象信息的PHP函数
function getimageinfo(img) { //img为图象文件绝对路径 img_info = getimagesize(img); switch (img_info[2]) { case 1: imgtype = "gif"; break; case 2: imgtype = "jpg"; break; case 3: imgtype = "png"; break; } img_type = imgtype."图像"; img_size = ceil(filesize(img)/1000)."k"; //获取文件大小 new_img_info = array ( "width"=>img_info[0], "height"=>img_info[1], "type"=>img_type "size"=>img_size } return new_img_info; }
PHP中GD库是做什么用的?
1、什么是gd库? gd库是php处理图形的扩展库,gd库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表。
php的指针引用
HP的的指针的特性: 1,用=&来把变量的地址传给另一个变量,这样,另一个变量就指向了同一个地址 2,用$c=$p;其中$p为指针,像这样的赋值,其实是把相当于让$c引用了$p所指的变量,而不是地址 3,普通的=号是把一个变量的引用传给另一个变量,如果源变量的内容不变,那么引用它的变量的内容也不会变,即当没有修改变量内容的时候,两个变量是指向同一个地址,但当源变量修改时,引用它的变量就会把源变量的内容复制一份出来放到一个新的内存地址中,引用它的变量则是指向这个新创建的内存地址,用简单的一句话概况就是:修改时复制 4,所以,回到(2),如果$p指向的内容发生了变化,那么,也会自动复制一份$p原来的内容到一块新的内存地址中,当用echo输出$c的时候,输出的内容还是$p的内容发生改变前的内容。 5,综上所述,可以推导出(并且也经过实验证明了),如果有$a,$b=&$a,那么你修改a时,b的内容也会随之改变,如果你想再用c来引用b,并且在a改变时也能影响到c,那么必须如下这样写: $a=”aa”; $b=&$a; $c=&$b; 如此这般,当a变化时,用echo输出b和c的结果和a的内容是一样的,当然这样是为了说明php指针的特性,并不特意想说明他在具体应用中会有什么用,只是为了更加深刻的理解php的指针。 如果上面的三行代码最后一行变成:$c=$b; 那么在a发生改变时,输出c的值还是a原来的值。 例1: $test1 = ‘aaaaaa’; $ab = &$test1; unset($test1); echo $ab; 结果:aaaaaa 例2: $test = ‘aaaaaa’; $abc = &$test; $test = ‘bbbbb’; echo $abc;结果:bbbbb 例3: $a = array(1,2,3,4,5);如何把数组$a变成右面的 $a = array(2,3,4,5,6); foreach($a as $key=>&$value){ $value += 1; } print_r($a);结果:Array ( [0] => 2 [1] [...]
php中三个等于号是什么意思
1、=:赋值,在逻辑运算时也有效; 2、==:等于运算,但是不比较值的类型; 3、===:完全等于运算,不仅比较值,而且还比较值的类型,只有两者一致才为真。
排序中sort、asort、rsort、arsort、ksort、krsort、natsort的区别
sort $arr = array(5,2,6,8,4,1); sort($arr); print_r($arr); 输出:Array( [0] => 1 [1] => 2 [2] => 4 [3] => 5 [4] => 6 [5] =>8 ) 可以看到键值关联不再保持. assort 本函数对数组进行排序,数组的索引保持和单元的关联.主要用于对那些单元顺序很重要的结合数组进行排序. 示例: $arr = array(5,2,6,8,4,1); asort($arr); print_r($arr); 输出:Array ( [5] => 1 [1] => 2 [4] => 4 [0] => 5 [2] => 6 [3] =>8 ) 可以看到键值保持不变 [...]
Php.ini文件中各个参数的意思是:
php.ini 是 PHP 在启动时会读取的配置文件。该文件的存放路径为 /usr/local/lib/。Win服务器该文件存放在 X:\PHP安装路径\php.ini 。若 PHP 安装成服务器的模块,则在 Web 服务器启动执行时会读取,之后就不再读取,因此改动配置的话要重新启动 Web 服务器。若使用独立 PHP CGI 方式,则每次都读一次。 要看目前的系统配置,可以用phpinfo()看到。以下为选项配置 布尔标志用 On 表示打开,用 Off 表示关闭。 • short_open_tag = On 是否允许使用”“短标识。否则必须使用”“长标识。 • safe_mode = Off 是否启用安全模式。 • safe_mode_gid = Off 在安全模式下,默认在访问文件时会做UID比较检查。 但有些情况下严格的UID检查反而是不适合的,宽松的GID检查已经足够。 如果你想将其放宽到仅做GID比较,可以打开这个参数。 • safe_mode_include_dir = 在安全模式下,该组目录和其子目录下的文件被包含时,将跳过UID/GID检查。 换句话说,如果此处的值为空,任何UID/GID不符合的文件都不允许被包含。 这里设置的目录必须已经存在于include_path指令中或者用完整路径来包含。 多个目录之间用冒号(Win下为分号)隔开。 指定的限制实际上是一个前缀,而非一个目录名, 也就是说”/dir/incl”将允许访问”/dir/include”和”/dir/incls” 如果您希望将访问控制在一个指定的目录,那么请在结尾加上斜线。 • child_terminate = Off PHP脚本在请求结束后是否允许使用apache_child_terminate()函数终止子进程。 • [...]