本文实例分析了php数组添加与删除单元的常用函数。分享给大家供大家参考。具体分析如下:<?php header("Content-type:text/html;charset=utf-8"); $arr = array("a"=>"Horse","b"=>"Cat","c"=>"Dog"); array_push($arr,"hello","world"); //array_push将一个或多个单元压入到数组末尾 print_r($arr); echo "";//array_pop():删除数组的最后一个单元 array_pop($arr); print_r($arr); echo "";//array_shift():删除数组的第一个单...
本文实例讲述了php中return的用法。分享给大家供大家参考。具体分析如下: 首先,它的意思就是返回;return()是语言结构而不是函数,仅在参数包含表达式时才需要用括号将其括起来。当返回一个变量时通常不用括号,这样可以降低PHP的负担。 基本用法: a)、return expression // 返回一个表达式结果 b)、return(expr) // 函数表达式 c)、return // 直接返回,或返回空值 注意:最好不要用return($val)这种方式。 1、如果执行了return...
本文实例讲述了php数组键值用法。分享给大家供大家参考。具体分析如下: 先看一个数组:<?php $switching = array(10, // key = 05 => 6,3 => 7,a => 4,11, // key = 6 (整个数组中整型键索引最大的值是5)8 => 2, // key = 8 (字符串健8转换为8)02 => 77, // key = 02(注意不是2)0 => 12 /*前面值为10的键被赋予0,而后面重新定义了0键的值为12,从而覆盖了前面默认的0键值*/); // empty array $empty = array(); ?>如果用pri...
本文实例讲述了php随机抽奖用法。分享给大家供大家参考。具体分析如下: 1. 按照设定的概率,得到随机抽奖的结果。 代码如下:<?php /*** 抽奖工具*/ class lottery_tool {protected static $awardsArr;protected static $proField = probability;protected static $proSum = 0;protected static $checkAward = false;const SUCCESS_CODE = 0;const FAIL_CODE = -1;//检查抽奖数据protected static function checkAwards(){if ...
本文实例分析了PHP多线程之内部多线程用法。分享给大家供大家参考。具体如下:代码如下:<?php class Http_MultiRequest {//要并行抓取的url 列表private $urls = array();//curl 的选项private $options;//构造函数function __construct($options = array()){$this->setOptions($options);}//设置url 列表function setUrls($urls){$this->urls = $urls;return $this;}//设置选项function setOptions($options){$options[CURLOPT_RE...
本文实例讲述了PHP树的深度编历生成迷宫及A*自动寻路算法。分享给大家供大家参考。具体分析如下: 有一同事推荐了三思的迷宫算法,看了感觉还不错,就转成php 三思的迷宫算法是采用树的深度遍历原理,这样生成的迷宫相当的细,而且死胡同数量相对较少! 任意两点之间都存在唯一的一条通路。 至于A*寻路算法是最大众化的一全自动寻路算法 废话不多说,贴上带代码 迷宫生成类:代码如下:class Maze{// Maze Createprivate $_w;privat...
本文实例讲述了PHP多线程编程之管道通信用法。分享给大家供大家参考。具体分析如下: 一个线程如果是个人英雄主义,那么多线程就是集体主义,你不再是一个独行侠,而是一个指挥家。管道通信: 1. 管道可以认为是一个队列,不同的线程都可以往里面写东西,也都可以从里面读东西。写就是 在队列末尾添加,读就是在队头删除。 2. 管道一般有大小,默认一般是4K,也就是内容超过4K了,你就只能读,不能往里面写了。 3. 默认情况下,管道...
本文实例分析了php定义一个参数带有默认值的函数用法。分享给大家供大家参考。具体分析如下: php的函数参数可以指定默认值,指定默认值后,调用时如果不给该参数赋值,则该参数就使用默认值<?php function capitalize( $str, $each=TRUE ) {$str = strtolower($str);if ($each === TRUE) { $str = ucwords ($str);} else {$str = strtoupper($str); }echo ("$str "); } capitalize("hEllo WoRld!"); capitalize("hEllo WoRld!",...
本文实例分析了使用PHPExcel操作Excel用法。分享给大家供大家参考。具体分析如下: PHPExcel下载地址: http://www.codeplex.com/PHPExcel http://www.phpexcel.net 开发包Tests目录有详细使用实例 支持中文,注意文件编码 文件保存为utf-8 1.header部分:header("Content-Type:application/vnd.ms-excel"); header("Content-Disposition:attachment;filename=sample.xls"); header("Pragma:no-cache"); header("Expires:0");2...
本文实例讲述了PHP贪婪算法解决0-1背包问题的方法。分享给大家供大家参考。具体分析如下: 贪心算法解决0-1背包问题,全局最优解通过局部最优解来获得!比动态规划解决背包问题更灵活!//0-1背包贪心算法问题 class tanxin{public $weight;public $price;public function __construct($weight=0,$price=0){$this->weight=$weight;$this->price=$price;} } //生成数据 $n=10; for($i=1;$i<=$n;$i++){$weight=rand(1,20);$price=rand...
本文实例讲述了PHP回溯法解决0-1背包问题的方法。分享给大家供大家参考。具体分析如下: 这段代码是根据《软件设计师》教程的伪代码写的; 最麻烦的不是伪代码改成php,而是数组下标从0开始,及相应的下标判断问题; 带着调试输出一块写上<?php$v_arr = array(11,21,31,33,43,53,55,65);$w_arr = array(1,11,21,23,33,43,45,55);$n = count($w_arr );//测试输出var_dump(bknap1(110)); //var_dump(bound(139,89,7,110));function b...
本文实例分析了PHP动态规划解决0-1背包问题。分享给大家供大家参考。具体分析如下: 背包问题描述:一个承受最大重量为W的背包,现在有n个物品,每个物品重量为t, 每个物品的价值为v。 要使得这个背包重量最大(但不能超过W),同时又需要背包的价值最大。 思路:定义一个二维数组,一维为物品数量(表示每个物品),二维是重量(不超过最大,这里是15),下面数组a, 动态规划原理思想,max(opt(i-1,w),wi+opt(i-1,w-wi)) 当中最大值, opt...
本文实例讲述了PHP加密解密类。分享给大家供大家参考。具体分析如下: 这段代码支持 数组加密 , 密文有效期, 各种对称加密 其中参数如下: * @use ption::en($string, $key); * @param String $string 需要加密的字串 * @param String $skey 密钥 * @param int $expiry 密文有效期, 加密时候有效, 单位 秒,0 为永久有效 * @return String 1. php代码如下:/** -工具库-加密解密码 */ class ption {private static $original = ar...
本文实例讲述了PHP图像处理类库MagickWand用法。分享给大家供大家参考。具体分析如下: MagickWand 是PHP的一个扩展程序,通过它建立起与ImageMagick的交互,进行图片的处理。它是默认的GD图象函数库的绝佳替代方案。从安全性和易用性来说,在PHP中使用MagickWand比使用命令行ImageMagick要安全快捷的多。另外 imagick也可用于PHP中作为ImageMagick的替代方案。 MagickWand 有两种形式, 只是建立与ImageMagick的交互,这种情况必须...
本文实例讲述了php之static静态属性与静态方法。分享给大家供大家参考。具体如下:<?php /** static*//*静态:属于类而不属于单个对象 (全局的,所有对象共享的)*静态属性:类的方法内调用静态属性时,不要使用$this->方式,而要使用self::的方式*静态方法:*在类没有任何对象的时候也能被调用*当成普通方法来用也没问题的*在静态方法中不能调用普通方法* * */class xin {static private $name;public function setname($namec) ...