IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> php经典实例(日期和时间数组) -> 正文阅读

[PHP知识库]php经典实例(日期和时间数组)

01.查找当前日期和时间

$time = date('Y-m-d H:i:s');
echo $time;

var_dump(date('r'));
//打印 Thu, 29 Jul 2021 10:05:08 +0800

getdate — 取得日期/时间信息

$today = getdate();
print_r($today);

Array
(
    [seconds] => 21
    [minutes] => 9
    [hours] => 10
    [mday] => 29
    [wday] => 4
    [mon] => 7
    [year] => 2021
    [yday] => 209
    [weekday] => Thursday
    [month] => July
    [0] => 1627524561
)

localtime - 函数返回本地时间(一个数组)。

$today = localtime(time(),true);
print_r($today);

Array
(
    [tm_sec] => 27
    [tm_min] => 12
    [tm_hour] => 10
    [tm_mday] => 29
    [tm_mon] => 6
    [tm_year] => 121
    [tm_wday] => 4
    [tm_yday] => 209
    [tm_isdst] => 0
)

02.从字符串解析日期和时间

strtotime — 将任何字符串的日期时间描述解析为 Unix 时间戳

echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
echo date('Y-m-d H:i:s',strtotime('+1 month')); //一个月后

数组

01.指定并非从0开始的数组

$arr = [ 1 => 'stark','nike','min'];
print_r($arr);
//打印
Array
(
    [1] => stark
    [2] => nike
    [3] => min
)

// 数组下标也可以使用负数
$arr = [ -1 => 'stark','nike','min'];
print_r($arr);

02.数组初始化为整数范围

range — 根据范围创建数组,包含指定的元素

$numberArr = range(1,10);
var_dump($numberArr );

$odd = range(1,10,2); //奇数
$even = $odd = range(2,10,2); //偶数

03.迭代处理数组

foreach($arr as $value){
    第一种
}

foreach($arr as $key => $value){
    第二种
}

//第三种
$arr = [ 'stark','nike','min'];
for( $i=0; $i<= count($arr) - 1;$i++ ){
    echo $arr[$i].$i.PHP_EOL;
}

//第四种
while(list($key,$val) = each($arr)){
    var_dump($key,$val);
}

04.从数组删除元素

unset — 释放给定的变量

// 销毁单个变量
unset ($foo);

// 销毁单个数组元素
unset ($bar['quux']);
 
// 销毁一个以上的变量
unset($foo1, $foo2, $foo3);

array_splice — 去掉数组中的某一部分并用其它值取代

$input = array("red", "green", "blue", "yellow");
array_splice($input, 2);
var_dump($input);

$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, -1);
var_dump($input);

$input = array("red", "green", "blue", "yellow");
array_splice($input, 1, count($input), "orange");
var_dump($input);

$input = array("red", "green", "blue", "yellow");
array_splice($input, -1, 1, array("black", "maroon"));
var_dump($input);

05.改变数组的大小

array_pad — 以指定长度将一个值填充进数组

$input = array(12, 10, 9);

$result = array_pad($input, 5, 0);
// result is array(12, 10, 9, 0, 0)

$result = array_pad($input, -7, -1);
// result is array(-1, -1, -1, -1, 12, 10, 9)

$result = array_pad($input, 2, "noop");
// 12, 10, 9

$result = array_pad($input, 5, "noop");
// 12, 10, 9,noop,noop

array_splice — 去掉数组中的某一部分并用其它值取代

$input = array(12, 10, 9);

$result = array_splice($input,2);

var_dump($result,$input);

// $result is array( 9 )
// $input is array( 12,0 )

06.将数组追加到另外一个数组

array_merge — 合并一个或多个数组

a r r a y 1 + array1+ array1+array2 和 array_merge的不同点在于 前者会覆盖,保留第一个数组里的键值,array_merge会保留所有键值,重新索引

$array1 = array(0 => 'zero_a', 7 => 'one_b', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$result = $array1 + $array2;
var_dump($result);

var_dump(array_merge($array1,$array2));

如果array_merge是索引数组,也会覆盖,留下后面的值(亲测)

$a = array('a','b'=>'b');
$b = array('A','b'=>'B');

$result = array_merge($a ,$b);
$c = $a + $b;
var_dump( $result, $c );

07.将数组转化为字符串

implode — 将一个一维数组的值转化为字符串,又名join

$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);

08.检查一个键是不是在数组中

array_key_exists — 检查数组里是否有指定的键名或索引

$search_array = array('first' => null, 'second' => 4);

// returns false
isset($search_array['first']);

var_dump($search_array);

// returns true
$bool = array_key_exists('first', $search_array);

var_dump($bool);

09.检查一个元素是否在数组中

array_key_exists — 检查数组里是否有指定的键名或索引

$search_array = array('first' => null, 'second' => 4);

// returns false
isset($search_array['first']);

var_dump($search_array);

// returns true
$bool = array_key_exists('first', $search_array);
var_dump($bool);

10.最大值和最小值

max — 找出最大值

<?php
echo max(1, 3, 5, 6, 7);  // 7
echo max(array(2, 4, 5)); // 5

// When 'hello' is cast as integer it will be 0. Both the parameters are equally
// long, so the order they are given in determines the result
echo max(0, 'hello');     // 0
echo max('hello', 0);     // hello

echo max('42', 3); // '42'

// Here 0 > -1, so 'hello' is the return value.
echo max(-1, 'hello');    // hello

// With multiple arrays of different lengths, max returns the longest
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)

// 对多个数组,max 从左向右比较。
// 因此在本例中:2 == 2,但 4 < 5
$val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7)

// 如果同时给出数组和非数组作为参数,则总是将数组视为
// 最大值返回
$val = max('string', array(2, 5, 7), 42);   // array(2, 5, 7)
?>

min — 找出最小值

<?php
echo min(2, 3, 1, 6, 7);  // 1
echo min(array(2, 4, 5)); // 2

echo min(0, 'hello');     // 0
echo min('hello', 0);     // hello
echo min('hello', -1);    // -1

// 对多个数组,min 从左向右比较。
// 因此在本例中:2 == 2,但 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)

// 如果同时给出数组和非数组作为参数,则不可能返回数组,因为
// 数组被视为最大的
$val = min('string', array(2, 5, 7), 42);   // string

11.删除重复的值

array_unique — 移除数组中重复的值

注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);

/** 
array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}
*/
  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-08-26 11:53:54  更:2021-08-26 11:54:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/21 2:10:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码