<?php/*** 数组相关函数测试*/Class test_array{protected $startTime;protected $endTime;/*** 办法默认入口, 用于调用前处理*/public function __call($method, $args){echo "==================================== Test function [ <span style='color:red;'>$method</span> ] ====================================<br/>";echo "<br/>";$this->getDocComment($method);$this->startTime = $this->getCurrentTime();echo "<span style='color:aqua;'>StartTime: </span><span style='color:purple;'>". date("Y-m-d H:i:s", $this->startTime).'</span>';echo "<br/>";echo "<div style='color:red;background-color:lightgrey;'>Params: </div>";$this->outPut($args);echo "<br/>";echo "<div style='color:green;background-color:lightgrey;'>Results: </div>";return $this->outPut(call_user_func_array([$this, $method], $args));}/*** 析构函数, 处理时间*/public function __destruct(){$this->endTime = $this->getCurrentTime();echo "<span style='color:aqua;'>EndTime: </span><span style='color:purple;'>". date("Y-m-d H:i:s", $this->endTime).'</span>';echo "<br/>";echo "<span style='color:red;'>UseTime: ". round($this->endTime - $this->startTime, 4) . ' s </span>';}/*** 获取方法注释*/public function getDocComment($fc){$func = new ReflectionMethod($this, $fc);$tmp = $func->getDocComment();$flag = preg_match_all('/\* .*/', $tmp, $tmp, PREG_PATTERN_ORDER);$comment = $tmp[0];echo "<div style='color:blue;background-color:lightgrey;'>Comment: </div>";echo "<br/>";if(is_array($comment)){foreach ($comment as $k => $v) {echo ' '. str_replace('*', '', $v);echo "<br/>";}}else {$comment = $comment != '' ? $comment : '无';echo ' '. $comment;}echo "<br/>";return $tmp;}/*** 获取毫秒级时间*/public function getCurrentTime(){return microtime(true);}/*** 打印结果*/protected function outPut($mix){var_dump($mix);}/*** input需要操作的数组。* case可以在这里用两个常量,CASE_UPPER 或 CASE_LOWER(默认值)。* return array*/protected function array_change_key_case($input, $case = CASE_LOWER){return array_change_key_case($input, $case);}/*** 将一个数组分割成多个数组,其中每个数组的单元数目由 size 决定。最后一个数组的单元数目可能会少于 size 个。* input* 需要操作的数组** size* 每个数组的单元数目** preserve_keys* 设为 TRUE,可以使 PHP 保留输入数组中原来的键名。如果你指定了 FALSE,那每个结果数组将用从零开始的新数字索引。默认值是 FALSE。*/protected function array_chunk($input, $size, $preserve_keys = false){return array_chunk($input, $size, $preserve_keys);}}$test = new test_array();$arr = ['Cds' => 'ds','dse' => '13','13' => null,0 => '',8 => 88];//$test->array_change_key_case($arr);$test->array_chunk($arr, 2, true);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。