当前位置:  编程技术>php
本页文章导读:
    ▪php批量替换相对地址为绝对地址的实例代码      完整代码:   代码示例: <?php //需要替换的关键字 $GLOBALS["patterns"] = array(     "/#BASE_URL#/" ); //替换后的内容,和上面的匹配规则一一对应 $GLOBALS["replacements"] = array(    "http://api.map.baid.........
    ▪php数组操作实例详解 经典实例      一、php数组的声明与赋值   代码示例: <?php //声明 $arr = array();  //赋值 $arr[0] = 'str1';  $arr['name'] = 'str2';  $arr[] = 'str3'  array_push($arr,'str4');  //取值 $rs = $arr[0];  $rs = $arr['name'];  //.........
    ▪windows中配置PHP环境变量      PHP加入环境变量 解压php,例如解压到"D:/php"中。 然后,右击"我的电脑"->"属性"->选择"高级"标签页->点击"环境变量"。 点击下面"系统变量"列表内 的"Path"->点击下面的"编辑"->在"变.........

[1]php批量替换相对地址为绝对地址的实例代码
    来源: 互联网  发布时间: 2013-12-24

完整代码:
 

代码示例:

<?php
//需要替换的关键字
$GLOBALS["patterns"] = array(
    "/#BASE_URL#/"
);

//替换后的内容,和上面的匹配规则一一对应
$GLOBALS["replacements"] = array(
   "http://api.map.baidu.com/lbsapi/cloud/"
    //"http://172.22.168.178/lbsapi/"
    //"http://dev.baidu.com/wiki/static/map/cloud/"
);

/**
 * 操纵文件类
 *
 * 例子:
 * FileUtil::copyDir('b','d/e');                    测试复制文件夹 建立一个d/e文件夹,把b文件夹下的内容复制进去
 * FileUtil::copyFile('b/1/2/3.exe','b/b/3.exe'); 测试复制文件        建立一个b/b文件夹,并把b/1/2文件夹中的3.exe文件复制进去
 * FileUtil::createDir('a/1/2/3');                    测试建立文件夹 建一个a/1/2/3文件夹
 * FileUtil::unlinkFile('b/d/3.exe');             测试删除文件        删除b/d/3.exe文件
 */
class FileUtil {
    /**
     * 建立文件夹 www.
     *
     * @param string $aimUrl
     * @return viod
     */
    function createDir($aimUrl) {
        $aimUrl = str_replace()('', '/', $aimUrl);
        $aimDir = '';
        $arr = explode()('/', $aimUrl);
        foreach ($arr as $str) {
            $aimDir .= $str . '/';
            if (!file_exists($aimDir)) {
                mkdir($aimDir);
            }
        }
    }

    /**
     * 删除文件
     *
     * @param string $aimUrl
     * @return boolean
     */
    function unlinkFile($aimUrl) {
        if (file_exists($aimUrl)) {
            unlink($aimUrl);
            return true;
        } else {
            return false;
        }
    }
   
    /**
     * 复制文件夹
     *
     * @param string $oldDir
     * @param string $aimDir
     * @param boolean $overWrite 该参数控制是否覆盖原文件
     * @return boolean
     */
    function copyDir($oldDir, $aimDir, $overWrite = false) {
        $aimDir = str_replace('', '/', $aimDir);
        $aimDir = substr($aimDir, -1) == '/' ? $aimDir : $aimDir.'/';
        $oldDir = str_replace('', '/', $oldDir);
        $oldDir = substr($oldDir, -1) == '/' ? $oldDir : $oldDir.'/';
        if (!is_dir($oldDir)) {
            return false;
        }
        if (!file_exists($aimDir)) {
            FileUtil::createDir($aimDir);
        }
        $dirHandle = opendir($oldDir);
        while(false !== ($file = readdir($dirHandle))) {
            if ($file == '.' || $file == '..') {
                continue;
            }
            if (!is_dir($oldDir . $file)) {
                FileUtil::copyFile($oldDir . $file, $aimDir . $file, $overWrite);
            } else {
                FileUtil::copyDir($oldDir . $file, $aimDir . $file, $overWrite);
            }
        }
        return closedir($dirHandle);
    }
    /**
     * 复制文件
     *
     * @param string $fileUrl
     * @param string $aimUrl
     * @param boolean $overWrite 该参数控制是否覆盖原文件
     * @return boolean
     */
    function copyFile($fileUrl, $aimUrl, $overWrite = false) {
        if (!file_exists($fileUrl)) {
            return false;
        }
        if (file_exists($aimUrl) && $overWrite == false) {
            return false;
        } elseif (file_exists($aimUrl) && $overWrite == true) {
            FileUtil::unlinkFile($aimUrl);
        }
        $aimDir = dirname($aimUrl);
        FileUtil::createDir($aimDir);
        copy($fileUrl, $aimUrl);
        //替换变量
        $apiFilePointer = fopen($aimUrl, 'r');
        $apiFileContent = fread($apiFilePointer, filesize($aimUrl));
        //只在js、html、css文件进行替换
        if (preg_match('/(\.js|\.html|\.css|\.htm)$/', $aimUrl)) {
            $apiFileContent = preg_replace($GLOBALS["patterns"], $GLOBALS["replacements"], $apiFileContent);
        }
        fclose($apiFilePointer);
        echo $aimUrl."\r\n";
        $apiFilePointer = fopen($aimUrl, 'w+');
        fwrite($apiFilePointer, $apiFileContent);
        fclose($apiFilePointer);
        //替换变量
        return true;
    }
}

FileUtil::copyDir("resource","cloud",true);
?>
 

写一个bat批处理文件,来运行这个PHP。
 

代码示例:
php release.php
 

击bat文件,全部页面里的相对地址就会变成绝对地址了。


    
[2]php数组操作实例详解 经典实例
    来源: 互联网  发布时间: 2013-12-24

一、php数组的声明与赋值
 

代码示例:

<?php
//声明
$arr = array(); 

//赋值
$arr[0] = 'str1'; 
$arr['name'] = 'str2'; 
$arr[] = 'str3' 
array_push($arr,'str4'); 

//取值
$rs = $arr[0]; 
$rs = $arr['name']; 

//获取数据长度
$arr_count = count($arr); 
$arr_count = sizeof($arr); 
//此2个方法无区别
?>

重新整理键名
 

代码示例:
<?php 
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse"); 
print_r(array_values()($a)); 
?>

输出
Array ( [0] => Cat [1] => Dog [2] => Horse ) 

二、合并数组
array_merge() 函数把两个或多个数组合并为一个数组。
如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。
 

代码示例:
<?php 
$a1=array("a"=>"Horse","b"=>"Dog"); 
$a2=array("c"=>"Cow","b"=>"Cat"); 
print_r(array_merge($a1,$a2));?> 
?>
 

输出:
Array ( [a] => Horse [b] => Cat [c] => Cow ) 

三、去除重复值
array_unique() 函数移除数组中的重复的值,并返回结果数组。
当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
返回的数组中键名不变。
 

代码示例:
<?php 
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); 
print_r(array_unique($a)); 
?> 

输出
Array ( [a] => Cat [b] => Dog ) 

四、获取所有键名

array_keys()() 函数返回包含数组中所有键名的一个新数组。
如果提供了第二个参数,则只返回键值为该值的键名。

如果 strict 参数指定为 true,则 PHP 会使用全等比较 (===) 来严格检查键值的数据类型。
语法array_keys(array,value) array必需。规定输入的数组。value可选。指定值的索引(键)。strict

可选。与 value 参数一起使用。可能的值:
true - 根据类型返回带有指定值的键名。 false - 默认值。不依赖类型。

例子1
 

代码示例:
<?php 
$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog"); 
print_r(array_keys($a)); 
?> 

输出:
Array ( [0] => a [1] => b [2] => c ) 

例子2
 

代码示例:
<?php 
$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog"); 
print_r(array_keys($a,"Dog")); 
?>

例子 3
使用 strict 参数 (false):
 

代码示例:
<?php 
$a=array(10,20,30,"10"); 
print_r(array_keys($a,"10",false)); 
?> 

输出:
Array ( [0] => 0 [1] => 3 ) 

例子 4
使用 strict 参数 (true):
 

代码示例:
<?php 
$a=array(10,20,30,"10"); 
print_r(array_keys($a,"10",true)); 
?>
 

输出:
Array ( [0] => 3) 

五、将元素组合成一个字符串
implode()

例子
 

代码示例:
<?php 
$arr = array('Hello','World!','Beautiful','Day!'); 
echo implode(" ",$arr); 
?>

输出:
Hello World! Beautiful Day! 

六、追加数组

array_merge_recursive()函数与array_merge()相同,可以将两个或多个数组合并在一起,形成一个联合的数组.两者之间的区别在于,当某个输入数组中的某个键己经存在于结果数组中时该函数会采取不同的处理方式.array_merge()会覆盖前面存在的键/值对,替换为当前输入数组中的键/值对,而array_merge_recursive()将把两个值合并在一起,形成一个新的数组,并以原有的键作为数组名。还有一个数组合并的形式,就是递归追加数组。其形式为:array array_merge_recursive(array array1,array array2[…,array arrayN]) 
 

代码示例:

<?php
$fruit1 = array("apple" => "red", "banana" => "yellow");
$fruit2 = array("pear" => "yellow", "apple" => "green");
$result = array_merge_recursive($fruit1, $fruit2);
print_r($result);

// output
// Array ( [apple] => Array ( [0] => red [1] => green ) [banana] => yellow [pear] => yellow )
?>

现在键 apple 指向一个数组,这个数组由两个颜色值组成的索引数组。

七、连接数组
array_combine()函数会得到一个新数组,它由一组提交的键和对应的值组成。其形式为:array array_combine(array keys,array values) 
注意,两个输入数组必须大小相同,不能为空。
例子:
 

代码示例:

<?php
$name = array("apple", "banana", "orange");
$color = array("red", "yellow", "orange");
$fruit = array_combine($name, $color);
print_r($fruit);

// output
// Array ( [apple] => red [banana] => yellow [orange] => orange )
?>

八、拆分数组

array_slice()函数将返回数组中的一部分,从键offset开始,到offset+length位置结束。其形式:array array_slice (array array, int offset[,int length]) 

offset 为正值时,拆分将从距数组开头的offset 位置开始;如果offset 为负值,则拆分从距数组末尾的offset 位置开始。如果省略了可选参数length,则拆分将从offset 开始,一直到数组的最后一个元素。如果给出了length 且为正数,则会在距数组开头的offset+length 位置结束。相反,如果给出了length且为负数,则在距数组开头的count(input_array)-|length|位置结束。

例子:
 

代码示例:

<?php
$fruits = array("Apple", "Banana", "Orange", "Pear", "Grape", "Lemon", "Watermelon");
$subset = array_slice($fruits, 3);
print_r($subset);

// output
// Array ( [0] => Pear [1] => Grape [2] => Lemon [3] => Watermelon )
?>

然后使用下负长度:
 

代码示例:

<?php
$fruits = array("Apple", "Banana", "Orange", "Pear", "Grape", "Lemon", "Watermelon");
$subset = array_slice($fruits, 2, -2);
print_r($subset);

// output
// Array ( [0] => Orange [1] => Pear [2] => Grape )
?>

九、接合数组

array_splice()函数会删除数组中从offset开始到offset+length 结束的所有元素,并以数组的形式返回所删除的元素。其形式为:array array_splice ( array array , int offset[,length[,array replacement]])  

offset 为正值时,则接合将从距数组开头的offset 位置开始,offset 为负值时,接合将从距数组末尾的offset 位置开始。如果忽略可选的length 参数,则从offset 位置开始到数组结束之间的所有元素都将被删除。如果给出了length 且为正值,则接合将在距数组开头的offset + leng th 位置结束。相反,如果给出了length且为负值,则结合将在距数组开头的count(input_array)-length的位置结束。
例子:
 

代码示例:

<?php
$fruits = array("Apple", "Banana", "Orange", "Pear", "Grape", "Lemon", "Watermelon");
$subset = array_splice($fruits, 4);

print_r($fruits);
print_r($subset);

// output
// Array ( [0] => Apple [1] => Banana [2] => Orange [3] => Pear )
// Array ( [0] => Grape [1] => Lemon [2] => Watermelon )
?>

可以使用可选参数replacement来指定取代目标部分的数组。


    
[3]windows中配置PHP环境变量
    来源: 互联网  发布时间: 2013-12-24

PHP加入环境变量
解压php,例如解压到"D:/php"中。

然后,右击"我的电脑"->"属性"->选择"高级"标签页->点击"环境变量"。

点击下面"系统变量"列表内 的"Path"->点击下面的"编辑"->在"变量值"最后处加上";D:/php"(php的解压路径,不要忘记先加上";" 号)

点击"编辑"按钮前面的"新建"按钮->在"变量名"后输入"PHPRC"->"变量值"输入"D:/PHP" (PHP的解压路径)->点击"确定"完成。


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
windows iis7站长之家
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3