PHP 数组按值和日期排序(2 列)[重复]

2024-02-26

我在 PHP 中有多维数组。就像是

$mylist = array(
    array('ID' => 1, 'title' => 'Hello', 'datetime' => '2014-05-05 12:08 PM'),
    array('ID' => 2, 'title' => 'Amazing Pic', 'datetime' => '2014-05-06 11:08 PM'),
    array('ID' => 3, 'title' => 'Style', 'datetime' => '2014-05-02 9:08 PM'),
    array('ID' => 4, 'title' => 'Hello World', 'datetime' => '2014-05-01 5:08 PM')
);

我的问题是如何按标题和日期时间排序?我花了很长时间搜索这个。但我刚刚发现按两列排序,但数据类型相同。我现在正在努力做到这一点,因为我相信我的涉及 strtotime() 函数,因为这涉及时间。

这就是我此刻所拥有的

function querySort ($x, $y) {
    return strcasecmp($x['title'], $y['title']);
}

function cmp($a, $b){
    $ad = strtotime($a['datetime']);
    $bd = strtotime($b['datetime']);
    return ($ad-$bd);
}

usort($mylist , 'querySort');

usort($mylist , 'cmp');

谁能帮助我如何实现这一目标?


第二usort覆盖第一个的输出usort.

您需要做的就是合并两个排序函数,先按标题排序,然后按日期时间排序。

伪代码是:

function SortByTitleAndDateTime($a,$b)
    1) SortByTitle and return the value if it is non zero.
    2) If SortByTitle is zero (meaning the 2 values are the same in terms of title), 
        do SortByDateTime

最后,你只需要调用usort(array, SortByTitleAndDateTime).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 数组按值和日期排序(2 列)[重复] 的相关文章

  • 下一个和上一个文档

    我正在制作一个图片库 每个图像都有一个 id 当我查看图像时 我想要接下来的 3 个图像和之前的 3 个图像 我怎样才能在 mongodb 查询中得到这个 我认为我可以使用 sort by id 因为这是不可排序的 也许使用mapReduc
  • exec()、shell_exec()、curl_exec() 的安全漏洞

    有时 我会使用 exec shell exec 和curl exec 以下是典型用途 假设其中有 PHP 变量 即第一个变量中的 html 用户有可能修改其内容 从安全漏洞的角度来看 我应该关注什么 escapeshellcmd 和 esc
  • 在 JavaScript 中对并行数组进行排序

    我有几个名为名称和销售的并行数组 我让用户输入最多 100 名销售人员 显然是名字 及其销售额 我将这些打印到表格上没有问题 问题 无论如何对我来说 是它们需要根据销售额按降序排序 我做了一个函数叫做sort其编码 很差 因为我刚刚开始学习
  • 在 WooCommerce 中检查购物车中的多个产品 ID

    我使用以下代码来检查产品 ID 是否在购物车中 如果是 则添加额外的结帐字段 add action woocommerce after order notes conditional checkout field function cond
  • 使用 shell_exec 将 PHP 转换为 Powershell

    如果我运行 output shell exec powershell get service dhcp 我得到了 dhcp 服务的完美输出 显示正在运行 但如果我运行 output shell exec powershell get use
  • 防止重复数据输入mysql数据库

    我试图让我的电子邮件订阅服务拒绝数据库中已存在的电子邮件 这样用户就不会订阅同一封电子邮件两次 这就是我所拥有的 但它不起作用 有什么想法吗
  • 如何自动更新数据库中的记录?

    我有一个工作表 在其中插入新工作 该表还包含职位发布日期 默认情况下 当发生新插入时 作业状态为打开状态 现在 当作业超过 30 天时 我想将作业状态从开放更改为关闭 我该怎么做 尝试创建一个每天运行的事件 如下所示 CREATE EVEN
  • using 可用于为数组键入别名吗?

    我不确定我的措辞是否正确 因为这有点奇怪 基本上我发现了一些这样的代码 template
  • FutureWarning:使用非元组序列进行多维索引

    我收到的警告是 C Users el Anaconda3 envs Py3 lib site packages scipy io matlab miobase py 414 FutureWarning 使用非元组序列进行多维 不推荐使用索引
  • 将 Php 数组编码为 json [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想对我的 php 数组进行编码 A
  • 如何使用 PHP 通过 JSON 发送 HTML 元素?

    以下功能 try query this gt pdo gt prepare SELECT FROM bookings WHERE TourID AND dTourDate and Status NOT LIKE Cancelled quer
  • 正在 WordPress 中上传媒体,但显示错误“上传时发生错误。请稍后重试。”

    我试图在 WordPress 媒体上传中上传 jpeg 图像 上传时 显示错误 上传时发生错误 请稍后再试 上传时出现错误消息 但是当我重新加载页面时 图像显示在列表中 如下所示 重新加载页面后 所以 图片正在上传 这意味着不存在文件夹权限
  • php_network_getaddresses: getaddrinfo 失败: 名称或服务未知 (0) 连接失败..!

    我正在使用 php 邮件程序功能 但出现以下错误 如何修复它 2016 01 22 06 15 48 SMTP 错误 无法连接到服务器 php network getaddresses getaddrinfo失败 名称或服务未知 0 连接失
  • Outlook 中用于删除重复电子邮件的宏 -

    Public Sub RemDups Dim t As Items i As Integer arr As Collection f As Folder parent As Folder target As Folder miLast As
  • 将数组复制到动态分配的内存

    我的代码可以正常工作 但我觉得好像有一种更快的方法可以做到这一点 特别是在我的函数副本中 这是我的代码 这能再快一点吗 顺便说一句 这是 C 语言 另外 当我从函数返回 cpy 时 它是否会删除动态内存 因为它超出了范围 我不想发生内存泄漏
  • Laravel Redis 配置

    我目前正在使用 Laravel 和 Redis 创建一个应用程序 几乎一切都工作正常 我按照文档中的说明扩展了身份验证 用户可以订阅 登录 注销 我可以创建内容 所有内容都存储在 Redis 中 但我有一个问题 我无法运行 php arti
  • 使用 Laravel Socialite 登录 facebook

    然而 我是 Laravel 的新手 我正在遵循以下教程http www codeanchor net blog complete laravel socialite tutorial http www codeanchor net blog
  • Ace Editor 自动完成和多种语言

    如何为 Ace 编辑器创建自动完成功能以及如何突出显示 php 中的 html javascript 和 csshttp ace ajax org http ace ajax org
  • 按绝对值排序

    有谁知道如何按绝对值对 R 中的向量进行排序 所以 2 3 1 gt 1 2 3 etc 如果我在 python 中这样做 我会创建一对每个值及其符号 按绝对值对对列表进行排序 然后重新应用符号 但我对 R 很陌生 所以不知道如何执行此操作
  • Apache LOG:子进程 pid xxxx 退出信号分段错误 (11)

    Apache PHP Mysql Linux 注意 子进程 pid 23145 退出信号分段错误 11 tmp 中可能存在 coredump 但 tmp下没有找到任何东西 我怎样才能找到错误 PHP 代码中函数的无限循环导致了此错误

随机推荐