首页 > 解决方案 > 将一串数字表示为星期几

问题描述

我有一个 7 位的单个布尔值字符串(例如0010010),每个数字代表一周中的一天,从周日到周六。如果这一天处于活动状态,则将其标记为1

我想检查字符串并输出任何活动日期的缩写名称。

例子

1000000被转换为Sun因为星期日的数字是活动的。

0100010被转换为MonFri

1111111被转换为SunMonTueWedThuFriSatSun

我正在使用其他人在这里设计的系统。用 PHP 实现这一目标的最简单方法是什么?

标签: phparrays

解决方案


我会在这里发布这个,希望它可以改善这个问题:

<?php

$dow =['mon','tue','wed','thu','fri','sat','sun'];
$day = '0010000';

$result = array_combine($dow, str_split($day));
var_export($result);

输出:

array (
  'mon' => '0',
  'tue' => '0',
  'wed' => '1',
  'thu' => '0',
  'fri' => '0',
  'sat' => '0',
  'sun' => '0',
)

进一步的附加信息:

$day    = '1000100';
$result = array_combine($dow, str_split($day));
print implode(array_keys(array_filter($result)));

输出:

monfri

推荐阅读