教程介绍

主题:PHP


难度:初学者


预计完成时间:20分钟


知识点:array_rand, strip_tags, strftime, basename, list, range, isset




函数1:array_rand


让我们从一个简单的开始。是否曾经有过从数组里取出一个随机项?你可能使用rand或者mt_rand来获取一个随机数,传递0和这个数组的最大的索引作为最小和最大的参数;然后利用这个随机数作为键,从数组中获取一个值。


然而,使用array_rand会更方便一些。只要将数组传递给它,它就会返回一个随机键。


<?php

$domains = array('LoRui.com', 'icetoad.com', '8310.org', '15500.net', 'sisi.biz', '137.im', 'pitaya.biz');

$k = array_rand($domains);

echo $domains[$k];


如果你想从数组里获取更多随机值,你可以传递第二个参数,用来指定数量;如此,将把所有随机键以数组形式返回。



函数2:strip_tags


从用户那里接收大量文本的情况并不少见,比如一个评论或一份简历。当然,你大概不想允许这个文本里含有HTML标签,你不想Javascript任意运行,你只想接收纯文本。因此,你可以使用strip_tags来将HTML标签从他们的输入中清除:


<?php

$message = '<div> 欢迎光临龙睿LoRui.com </div>';

echo strip_tags($message); //欢迎光临龙睿LoRui.com


当然,你可能想要保留某些标签,比如<strong>、<em>或<code>,很简单,你只要将允许保留标签列表以字符串作为第二参数传递给该函数即可:


<?php

$message = '<div> 欢迎光临<strong>龙睿</strong>LoRui.com </div>';

echo strip_tags($message, '<strong><em><code>'); // 欢迎光临<strong>龙睿</strong>LoRui.com



函数3: strftime


在任何Web项目中,日期都占了很大的比重,因为你必须学会如果让它按你需要的任意格式进行输出。获取一个时间戳是很简单的——你可以通过数据库或使用time()函数——但是,如何格式化它?strftime函数可以将时间戳格式化为你喜欢的任意格式。将格式化字符串和时间戳传递给它就行了:


echo strftime('%Y-%m-%d', time()); //2012-09-24


当然,记住所有的格式化标记是不太可能的,你可以参考PHP官方手册里的描述。



函数4:basename


在操作文件的时候,你经常想通过绝对路径来获取它。然后,当你想要将文件信息显示给用户时,你大概只想显示它的文件名,而不是它的完整路径。进入basename:它是一个将路径分解到只有文件名的便利的函数;只需要将路径作为参数传递给它;如果你想去除后缀,比如扩展名之类的,将后缀传递给它的第个参数就行了。


足间舞ROOM


$path = '/www/lorui/com/doc/php/quick_tip.txt';

$filename1 = basename($path); //quick_tip.txt

$filename2 = basename($path, '.txt'); //quick_tip



函数5:list


它非常的酷!你有一个数组,并且你想把数组元素赋值给变量时,就可以使用它


list函数让它超级简单:


$arr = array('龙睿', 'LoRui', 'lorui.com');

list($chinese, $english, $domain) = $arr;

echo $chinese; //龙睿

echo $english; //LoRui

echo $domain; //lorui.com



函数6:range


如果你需要一个数字列表用来迭代,那么你应该看一下range函数。只需要传递开始和结束的数字(或字母)给它,它便会把这些数字以数组的形式返回:


range(0, 10); // array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

range('a', 'f'); //array('a', 'b', 'c', 'd', 'e', 'f')


正如你所看到的,它返回的结果包含了开始和结束的值。你也可以传递步进参数来指定两个数之间的增量:


range(2, 10, 2); // array(2, 4, 6, 8, 10)



函数7:isset


通过isset函数可以方便的判断一个变量是否已经被赋值。你只需传递变量名给该函数,如果变量存在并且已经赋了除NULL之外的值,该函数返回真值。


$name = 'Lorui';

isset($name); // true

isset($age); //false


该函数更多的是用来判断一个数组中的键是否已经赋值。这个函数经常用来判断$_GET$_POST等超全局数组中指定的键是否存在。举例来说,一个搜索页面可能像这个:


if(isset($_GET['query'])){

//获取结果并显示它们

} else {

//显示搜索框

}


上一篇 下一篇