如何使用PHP将工作日转换为二进制表示,反之亦然

如何使用PHP将工作日转换为二进制表示,反之亦然,php,Php,我正在寻找PHP类,它可以将任何工作日的组合转换为二进制,反之亦然 0(星期日)至6(星期六) 例如: 周一、周二、周三、周四、周五=>011110(其中周日和周六为休息日) 0101010=>此二进制表示星期一、星期三、星期五在其他休息日 该类应该能够将二进制转换为工作日,并将工作日转换为二进制 该类可以有两种方法: 公共函数convertWeekdaysToBinary($days) 这将把未来几天(数组)转换成二进制(字符串) 公共函数convertBinaryToWeekday

我正在寻找PHP类,它可以将任何工作日的组合转换为二进制,反之亦然

0(星期日)至6(星期六)

例如:

  • 周一、周二、周三、周四、周五=>011110(其中周日和周六为休息日)

  • 0101010=>此二进制表示星期一、星期三、星期五在其他休息日

该类应该能够将二进制转换为工作日,并将工作日转换为二进制

该类可以有两种方法:

  • 公共函数convertWeekdaysToBinary($days)

    • 这将把未来几天(数组)转换成二进制(字符串)
  • 公共函数convertBinaryToWeekdays($binary)

    • 这个将把即将到来的二进制(字符串)转换为天(数组)

    • 这是第一次:

      $arr = array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
      
      $search1 = "Monday, Tuesday, Wednesday, Thursday, Friday";
      $search_arr = explode(", ", $search1);
      $out1 = array("0","0","0","0","0","0","0");
      foreach($search_arr as $value){
          $sr = array_search($value, $arr);
          $out1[$sr] = "1";
      }
      echo implode("", $out1); //0111110
      
      反之亦然

      $search2 = "0101010";
      $search_arr = str_split($search2);
      $out2 = array();
      foreach($search_arr as $key => $value){
          if($value == 1){
              $out2[] = $arr[$key];
          }
      }
      echo implode(", ", $out2);//Monday, Wednesday, Friday
      

      好,简单,容易。你尝试了什么???似乎你已经对你想要的东西有了一个很好的想法,这样一个类将很容易编码。为什么不自己试试呢?这就是我想要表达的意思。我实际上想知道哪些php函数可以帮助我实现这一点。例如,一个类的一个方法将接收工作日数组,它可以是现在的任何一天。如何将它们转换为二进制并返回该二进制,以及如何使用另一个method@JunaidAli,现在检查答案。