1. PHP / Говнокод #26523

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    $dump = preg_replace_callback(
        '/
            (?<utf8>
                [\x09\x0A\x0D\x20-\x7E]
                | [\xC2-\xDF][\x80-\xBF]
                | \xE0[\xA0-\xBF][\x80-\xBF]
                | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}
                | \xED[\x80-\x9F][\x80-\xBF]  
                | \xF0[\x90-\xBF][\x80-\xBF]{2}
                | [\xF1-\xF3][\x80-\xBF]{3} 
                | \xF4[\x80-\x8F][\x80-\xBF]{2}
            )
            |
            (?<trash>.)
        /xs',
        function (array $match) {
            if (isset($match['utf8']) && strlen($match['utf8']) > 0) {
                $char = $match['utf8'];
                if (strlen($char) === 1 && ord($char) < 31) {
                    return '\x' . bin2hex($char);
                } else {
                    return $char;
                }
            } else {
                return '\x' . bin2hex($match['trash']);
            }
        },
        hex2bin('2cd2d948cfaf4b1097530f7c74fb6737')
    );
    
    var_dump($dump);

    https://phpclub.ru/talk/threads/bytes-fromhex-в-php.86568/
    Матёрые пхпшники переводят «Python» на «PHP».

    Запостил: gost, 22 Марта 2020

    Комментарии (22) RSS

    • Весь тред — просто-таки парад сюрреализма и изобретения «UTF-8».
      function dumpPrintable($str){
          $result='';
          for($i=0;$i<strlen($str);$i++){
              $c=ord($str{$i});
              if($c>=32 && $c<127){
                  $result.=chr($c);
              } else if($c<16){
                  $result.='\x0'.dechex($c);
              } else {
                  $result.='\x'.dechex($c);
              }
          }
          return "b'".$result."'";
      }
      
      echo dumpPrintable(hex2bin('2cd2d948cfaf4b1097530f7c74fb6737'))."<br>\n";
      echo dumpPrintable('\xfe\xff')."<br>\n";
      Ответить
    • > Сломал себе всю голову, гуглил часами.
      А мне кажется, экран смарт-часов слишком маленький, чтобы с него комфортно читать результаты.
      Ответить
    • Но вообще питушня какая-то. Я как только увидел "?<pituz>", ожидал описание грамматики python в php (рекурсивные питухи уже не регулярки, а конь-тексто-швабодки), разбор асд-питуха и трансляцию в рнр.
      Ответить
      • Это будет следующим этапом. Пока что переводят основные примитивы.
        Ответить
    • показать все, что скрытоvanished
      Ответить
    • https://phpclub.ru/talk/threads/php-extension-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-_server-%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%B8%D0%B9.80646/

      Как насрать в $_SERVER? Это же очевидно, нужно создать сишный экстеншон!
      Прямое доказательство того, что даже если обучить пыхомакаку сишке, она всё равно останется пыхомакакой.
      Ответить

    Добавить комментарий