阅读:2214回复:0
几个非常实用的PHP方法
几个非常实用的PHP方法!
Function1:array_rand 首先我们介绍这个简单的方法array_rand。 是不是想从一个数组中随机取出一个来?你可以使用rand或者mt_rand来得到一个随机的数,传递0和最后一个index值作为数组的最小和最大参数,这将会给你一个随机的key你可以用来得到数组的值。 当然这里有更方便的方法来实现上述功能:array_rand,只需要传递一个数组,会自动给你返回一个随机key。如下: $sites = ["BBB.com", "smsyun.com", "baidu.com", "google.com"]; $k = array_rand($sites); $sites[$k]; 如果你需要的不仅仅是一个一个随机数值的话,你还可以传递第二个参数来设置返回的数值数量,这样你就可以得到一个随机的数组。 Function2:strip_tags 我们常常会从客户端得到大段的文字内容:可能是留言或者是一个个人介绍。当然你可能不希望其中夹杂任何的HTML标签。如果你希望去除html,那么可以使用strip_tags: $message = " This is www.***.com "; echo strip_tags($message); //返回 "This is www.***.com" 当然,可能你希望允许出现某些标签,例如<b>,<strong>等,可以传递 第二个参数如下: $message = " This is www.***.com "; echo strip_tags($message, "<strong><em>"); // "This is www.***.com" Function3:strftime 日期是web程序中我们需要常常处理的对象,你如何将日期输出为你需要的格式呢?得到timestamp很简单,但是如何得到格式呢?使用strftime方法可以快速的帮助你得到你需要的格式,只需要传递格式字符串和timestamp,如下: strftime("%B %d, %Y", time()); // July 28, 2012 当然,如果你记不住所有的日期格式 ,可以使用这个方便的 strfti.me 地址来查询。 Function4:basename 当我们需要处理文件,你可以需要知道它的绝对路径。但是,如果你需要给用户显示文件信息,你可能需要显示文件名,不是整个路径。使用basename这个方法可以帮助你找出路径对应文件名,或者文件后缀,如下: $path = "/some/long/path/to/the/BBB.html"; $filename1 = basename($path); // BBB.html $filename2 = basename($path, ".html"); // BBB Function5:list 这个方法超棒,打比方说你有一个数组,你想将数组内容赋予到变量中,使用这个方法将会超简单: $array = ["BBB", "AAA"]; list($first_website, $last_website) = $array; echo $first_website; // BBB echo $last_website; // AAA 你可以看到,我们只传递了一个变量名参数到list方法,然后设置为数组。和一般的语法有些区别,因为方法在左边被调用,但是,的确可以工作。这里PHP文档有个非常好的例子: $data = "foo:*:1023:1000::/home/foo:/bin/sh"; list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data); Function6: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); Function7:isset 这个实用的方法可以用检测一个变量是否已经被设置。你传递一个变量名,如果变量存或者已经被设置为非null的数值则在将会返回true。 $name = "smsyun.com"; isset($name); // true isset($age); // false 因为这个方法同时也可以处理数组,所以可以用来检查全局数组$_GET和$_POST中指定的key是否存在。如下: if(isset($_GET['query'])) { // get results and display them } else { // show some default content } |
|