当前位置:  编程技术>php
本页文章导读:
    ▪PHP isset和empty的用法分析      本节内容: PHP isset()和empty 先看如下的判断语句:   代码示例: $switchType= empty($switchType)? 'all' : $switchType; 在$switchType为空的情况下赋值为all,发现当$switchType为0的时候会发现$switchType也被赋.........
    ▪PHP单元测试工具PHPUnit安装详解      本节主要内容: 安装PHPUnit的方法 一,linux 下默认安装好,重装:   代码示例: wget http://pear.php.net/go-pear.phar php go-pear.phar 二,win 系统 在命令行窗口中找到 PHP 的安装目录,运行 go-pear.bat .........
    ▪php时间函数strtotime的深入理解      本节内容: php时间函数strtotime 先来看下php官方手册中对strtotime的描述: strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。 也就是说,此函数可以把2010-02-28 18:31:33转换为12673.........

[1]PHP isset和empty的用法分析
    来源: 互联网  发布时间: 2013-12-24

本节内容:
PHP isset()和empty

先看如下的判断语句:
 

代码示例:
$switchType= empty($switchType)? 'all' : $switchType;

在$switchType为空的情况下赋值为all,发现当$switchType为0的时候会发现$switchType也被赋值为all。
因此,可以认定php中0这个值在empty函数中会被作为空来判定,后来该为用isset就解决了此问题。
根据此问题,通过实际例子详细来解释下empty和issset两者的区域和用法。

一、empty和isset函数详解
1、empty函数
用途:检测变量是否为空
判断:如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。来源手册:http://php.net/manual/zh/function.empty.php
注意:empty() 只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用: empty(addslashes()($name))

2、isset函数
用途:检测变量是否设置
判断:检测变量是否设置,并且不是 NULL。如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个NULL 字节("\0")并不等同于 PHP 的 NULL 常数。

二、测试例子
 

代码示例:

<?php
/**
* isset和empty用法区别
* by www.
*/
function test($test_value) {
        var_dump($test_value);
        if (empty($test_value)) {
                echo $test_value . " empty\n";
        }
        else {
                echo $test_value . " not empty\n";
        }

        if (isset($test_value)) {
                echo $test_value . " isset\n";
        }
        else {
                echo $test_value . " not isset\n";
        }

        if ($test_value == "") {
            echo $test_value . " the string empty\n";
        }
        else {
            echo $test_value . " the string not empty\n";
        }
}

$test_value = 0;
test($test_value);
echo "-----------------------\n";
$test_value = NULL;
test($test_value);
echo "-----------------------\n";

$test_value = "";
test($test_value);
echo "-----------------------\n";

$test_value = "\0";
test($test_value);
echo "-----------------------\n";

$test_value = array();
test($test_value);
echo "-----------------------\n";

$test_value = false;
test($test_value);
echo "-----------------------\n";

$test_value = true;
test($test_value);
echo "-----------------------\n";
?>

输出结果:
 

int(0)
0 empty
0 isset
0 the string empty
-----------------------
NULL
 empty
 not isset
 the string empty
-----------------------
string(0) ""
 empty
 isset
 the string empty
-----------------------
string(1) ""
 not empty
 isset
 the string not empty
-----------------------
array(0) {
}
Array empty
Array isset
Array the string not empty
-----------------------
bool(false)
 empty
 isset
 the string empty
-----------------------
bool(true)
1 not empty
1 isset
1 the string not empty
-----------------------

三、二者的区别
1、isset值对于变量没有赋值或者赋值为NULL时判断false,其余都是true;
2、empty需要注意点比较多,要根据函数的定义来做判断

四、注意事项
empty在用于判断比对的时候要多注意,0若是用==会和""相等,此时可能需要用强制等于来判断===。


    
[2]PHP单元测试工具PHPUnit安装详解
    来源: 互联网  发布时间: 2013-12-24

本节主要内容:
安装PHPUnit的方法

一,linux 下默认安装好,重装:
 

代码示例:
wget http://pear.php.net/go-pear.phar
php go-pear.phar

二,win 系统
在命令行窗口中找到 PHP 的安装目录,运行 go-pear.bat 批处理文件即可。
如果当前 PHP 环境中没有 go-pear.bat 文件和 pear 目录
到 http://pear.php.net/go-pear.phar 处下载相应文件,放入自行建立的 pear 目录,
新建 go-pear.bat 文件,输入如下内容:
 

代码示例:
@ECHO OFF
set PHP_BIN = php.exe
%PHP_BIN% -d output_buffering=0 PEAR\go-pear.phar
Pause

运行 go-pear.bat 按提示操作即可安装好 pear 包。

安装 pear 包后,输入如下命令即可安装 PHPUnit
 

代码示例:
pear config-set auto_discover 1
pear install pear.PHPUnit.de/PHPUnit

输入  PHPUnit 有输出,即安装成功。

更详细的PHPUnit教程,请参考我们之前介绍过的文章:
PHPUnit教程(六)Fixture
PHPUnit教程(五)PHPUnit参数详解
PHPUnit教程(四)断言详解
PHPUnit教程(三)测试方法进阶
PHPUnit教程(二)PHPUnit基本用法
PHPUnit教程(一)PHPUnit介绍及安装

附1,PHPUnit使用指南之安装PHPUnit

PHPUnit可以通过PHP扩展和程序库(PEAE)获得。PEAR是可重用PHP组件的框架和分发系统。

安装PHPUnit可以通过PEAR安装程序命令获得:
 

代码示例:
pear install PHPUnit2

根据PEAR的版本命名标准,适用于PHP5的PHPUnit包称为PHPUnit2。
PHPUnit是适用于PHP4的包。

安装只有,能够在本地的PEAR目录中找到PHPUnit的源代码,路径通常是/usr/lib/ php/PHPUnit2。

尽管使用PEAR安装程序是PHPUnit唯一支持的安装方法,但还是可以手工安装。

手工安装,请参照以下做法:
1.从http://pear.php.net/package/PHPUnit2/download下载PHPUnit发布包,然后解压缩,确保目录在php.ini定义的include_path中。
2.准备phpunit脚本
 a. 将pear-phpunit脚本改名为phpunit
 b. 将脚本中所有的@php_bin@改名为PHP命令行解释器所在的目录(通常为/usr/bin/ php)。
 c. 将此脚本拷贝到一个PATH环境变量所包含的目录中,并将文件属性改为可执行(chmod +x phpunit)。
3. 将PHPUnit2/ Runner/Version.php脚本中的所有@package_version@字符串替换为你所安装的PHPUnit版本

附2, ubuntu系统中安装phpunit。
phpUnit 安装
1.Install php-pear
 

代码示例:
sudo apt-get install php-pear

2.Update its own channel
 

代码示例:
sudo pear channel-update pear.php.net

3.Upgrade pear
 

代码示例:
sudo pear upgrade-all

4.install PHPUnit and it’s dependencies through PEAR.
 

代码示例:
$ sudo pear channel-discover pear.phpunit.de
$ sudo pear channel-discover components.ez.no
$ sudo pear channel-discover pear.symfony.com
$ sudo pear install --alldeps phpunit/PHPUnit

5.make sure it works
 

代码示例:
$ phpunit --version

至此,在ubuntu系统中成功安装PHPUnit。


    
[3]php时间函数strtotime的深入理解
    来源: 互联网  发布时间: 2013-12-24

本节内容:
php时间函数strtotime

先来看下php官方手册中对strtotime的描述:
strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

也就是说,此函数可以把2010-02-28 18:31:33转换为1267353093这种格式。
在做时间戳转换时,请注意服务器的date.timezone的配置。

在strtotime函数说明中有这么一段话:
该函数将使用 TZ 环境变量(如果有的话)来计算时间戳。自 PHP 5.1.0 起有更容易的方法来定义时区用于所有的日期/时间函数。
此过程在 date_default_timezone_get()  函数页面中有说明。

可以这么理解:
如果date.timezone配置为空或者为UTC(格林威治时间),那么它就会直接把传入的时间直接转换为该时间的UNIX时间戳(相当于该时间识别为格林威治时间)
如果date.timezone配置了时区,例如Asia/Shanghai,那么这个函数就会将传入的时间认为是配置的时区的当地时间,然后根据该时区与UTC(格林威治时间)的时差来算格林威治时间的时间戳。

例如:
php.ini配置date.timezone为Asia/Shanghai;

传入:2010-02-28 18:31:33
函数转出的时间戳的实际时间为:
2010-02-28 10:31:33
因为Asia/Shanghai位于 +8区,那么函数会自动减去了8个钟头的时间来得到格林威治时间。

分享一段测试代码,供大家参考。

例子:
 

代码示例:
<?php
echo '2010-02-28 00:00:00';
echo '<br>';
// 格林威治时间 0
date_default_timezone_set('UTC');
echo gmdate('Y-m-d H:i:s', strtotime('2010-02-28 00:00:00'));
echo '<br>'; // www.
// 中国上海时间 + 8
date_default_timezone_set('Asia/Shanghai');
echo gmdate('Y-m-d H:i:s', strtotime('2010-02-28 00:00:00'));
echo '<br>';
// 美国洛杉矶时间 - 8
date_default_timezone_set('America/Los_Angeles');
echo gmdate('Y-m-d H:i:s', strtotime('2010-02-28 00:00:00'));
echo '<br>';

输出结果:
 

2010-02-28 00:00:00
2010-02-28 00:00:00
2010-02-27 16:00:00
2010-02-28 08:00:00

您可能感兴趣的文章:
php取得某段时间区间的时间戳的代码
php中的UNIX时间戳函数strtotime
php 时间戳函数总结与示例
php 当前时间、时间戳的获取方法汇总
php时间戳函数 strtotime 应用实例
php时间戳应用举例
php时间转换Unix时间戳的代码
php应用mktime获取时间戳的例子分析
学习php中时间戳和日期格式的转换


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪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