@@ -482,8 +482,8 @@ |
||
482 | 482 | } |
483 | 483 | |
484 | 484 | /** |
485 | - * @param $html |
|
486 | - * @param $decodeUtf8Specials |
|
485 | + * @param string $html |
|
486 | + * @param boolean $decodeUtf8Specials |
|
487 | 487 | * |
488 | 488 | * @return string |
489 | 489 | */ |
@@ -557,184 +557,184 @@ discard block |
||
557 | 557 | return \in_array($tag_name, self::$optional_end_tags, true) |
558 | 558 | || |
559 | 559 | ( |
560 | - $tag_name == 'li' |
|
560 | + $tag_name == 'li' |
|
561 | 561 | && |
562 | 562 | ( |
563 | - $nextSibling === null |
|
563 | + $nextSibling === null |
|
564 | 564 | || |
565 | 565 | ( |
566 | - $nextSibling instanceof \DOMElement |
|
566 | + $nextSibling instanceof \DOMElement |
|
567 | 567 | && |
568 | 568 | $nextSibling->tagName == 'li' |
569 | - ) |
|
570 | - ) |
|
571 | - ) |
|
569 | + ) |
|
570 | + ) |
|
571 | + ) |
|
572 | 572 | || |
573 | 573 | ( |
574 | - ( |
|
575 | - $tag_name == 'rp' |
|
576 | - ) |
|
574 | + ( |
|
575 | + $tag_name == 'rp' |
|
576 | + ) |
|
577 | 577 | && |
578 | 578 | ( |
579 | - $nextSibling === null |
|
579 | + $nextSibling === null |
|
580 | 580 | || |
581 | 581 | ( |
582 | - $nextSibling instanceof \DOMElement |
|
582 | + $nextSibling instanceof \DOMElement |
|
583 | 583 | && |
584 | 584 | ( |
585 | - $nextSibling->tagName == 'rp' |
|
585 | + $nextSibling->tagName == 'rp' |
|
586 | 586 | || |
587 | 587 | $nextSibling->tagName == 'rt' |
588 | - ) |
|
589 | - ) |
|
590 | - ) |
|
591 | - ) |
|
588 | + ) |
|
589 | + ) |
|
590 | + ) |
|
591 | + ) |
|
592 | 592 | || |
593 | 593 | ( |
594 | - $tag_name == 'tr' |
|
594 | + $tag_name == 'tr' |
|
595 | 595 | && |
596 | 596 | ( |
597 | - $nextSibling === null |
|
597 | + $nextSibling === null |
|
598 | 598 | || |
599 | 599 | ( |
600 | - $nextSibling instanceof \DOMElement |
|
600 | + $nextSibling instanceof \DOMElement |
|
601 | 601 | && |
602 | 602 | $nextSibling->tagName == 'tr' |
603 | - ) |
|
604 | - ) |
|
605 | - ) |
|
603 | + ) |
|
604 | + ) |
|
605 | + ) |
|
606 | 606 | || |
607 | 607 | ( |
608 | - ( |
|
609 | - $tag_name == 'td' |
|
608 | + ( |
|
609 | + $tag_name == 'td' |
|
610 | 610 | || |
611 | 611 | $tag_name == 'th' |
612 | - ) |
|
612 | + ) |
|
613 | 613 | && |
614 | 614 | ( |
615 | - $nextSibling === null |
|
615 | + $nextSibling === null |
|
616 | 616 | || |
617 | 617 | ( |
618 | - $nextSibling instanceof \DOMElement |
|
618 | + $nextSibling instanceof \DOMElement |
|
619 | 619 | && |
620 | 620 | ( |
621 | - $nextSibling->tagName == 'td' |
|
621 | + $nextSibling->tagName == 'td' |
|
622 | 622 | || |
623 | 623 | $nextSibling->tagName == 'th' |
624 | - ) |
|
625 | - ) |
|
626 | - ) |
|
627 | - ) |
|
624 | + ) |
|
625 | + ) |
|
626 | + ) |
|
627 | + ) |
|
628 | 628 | || |
629 | 629 | ( |
630 | - ( |
|
631 | - $tag_name == 'dd' |
|
630 | + ( |
|
631 | + $tag_name == 'dd' |
|
632 | 632 | || |
633 | 633 | $tag_name == 'dt' |
634 | - ) |
|
634 | + ) |
|
635 | 635 | && |
636 | 636 | ( |
637 | - ( |
|
638 | - $nextSibling === null |
|
637 | + ( |
|
638 | + $nextSibling === null |
|
639 | 639 | && |
640 | 640 | $tag_name == 'dd' |
641 | - ) |
|
641 | + ) |
|
642 | 642 | || |
643 | 643 | ( |
644 | - $nextSibling instanceof \DOMElement |
|
644 | + $nextSibling instanceof \DOMElement |
|
645 | 645 | && |
646 | 646 | ( |
647 | - $nextSibling->tagName == 'dd' |
|
647 | + $nextSibling->tagName == 'dd' |
|
648 | 648 | || |
649 | 649 | $nextSibling->tagName == 'dt' |
650 | - ) |
|
651 | - ) |
|
652 | - ) |
|
653 | - ) |
|
650 | + ) |
|
651 | + ) |
|
652 | + ) |
|
653 | + ) |
|
654 | 654 | || |
655 | 655 | ( |
656 | - $tag_name == 'option' |
|
656 | + $tag_name == 'option' |
|
657 | 657 | && |
658 | 658 | ( |
659 | - $nextSibling === null |
|
659 | + $nextSibling === null |
|
660 | 660 | || |
661 | 661 | ( |
662 | - $nextSibling instanceof \DOMElement |
|
662 | + $nextSibling instanceof \DOMElement |
|
663 | 663 | && |
664 | 664 | ( |
665 | - $nextSibling->tagName == 'option' |
|
665 | + $nextSibling->tagName == 'option' |
|
666 | 666 | || |
667 | 667 | $nextSibling->tagName == 'optgroup' |
668 | - ) |
|
669 | - ) |
|
670 | - ) |
|
671 | - ) |
|
668 | + ) |
|
669 | + ) |
|
670 | + ) |
|
671 | + ) |
|
672 | 672 | || |
673 | 673 | ( |
674 | - $tag_name == 'p' |
|
674 | + $tag_name == 'p' |
|
675 | 675 | && |
676 | 676 | ( |
677 | - ( |
|
678 | - $nextSibling === null |
|
677 | + ( |
|
678 | + $nextSibling === null |
|
679 | 679 | && |
680 | 680 | ( |
681 | - $node->parentNode !== null |
|
681 | + $node->parentNode !== null |
|
682 | 682 | && |
683 | 683 | !\in_array( |
684 | - $node->parentNode->nodeName, |
|
685 | - [ |
|
686 | - 'a', |
|
687 | - 'audio', |
|
688 | - 'del', |
|
689 | - 'ins', |
|
690 | - 'map', |
|
691 | - 'noscript', |
|
692 | - 'video', |
|
693 | - ], |
|
694 | - true |
|
695 | - ) |
|
696 | - ) |
|
697 | - ) |
|
684 | + $node->parentNode->nodeName, |
|
685 | + [ |
|
686 | + 'a', |
|
687 | + 'audio', |
|
688 | + 'del', |
|
689 | + 'ins', |
|
690 | + 'map', |
|
691 | + 'noscript', |
|
692 | + 'video', |
|
693 | + ], |
|
694 | + true |
|
695 | + ) |
|
696 | + ) |
|
697 | + ) |
|
698 | 698 | || |
699 | 699 | ( |
700 | - $nextSibling instanceof \DOMElement |
|
700 | + $nextSibling instanceof \DOMElement |
|
701 | 701 | && |
702 | 702 | \in_array( |
703 | - $nextSibling->tagName, |
|
704 | - [ |
|
705 | - 'address', |
|
706 | - 'article', |
|
707 | - 'aside', |
|
708 | - 'blockquote', |
|
709 | - 'dir', |
|
710 | - 'div', |
|
711 | - 'dl', |
|
712 | - 'fieldset', |
|
713 | - 'footer', |
|
714 | - 'form', |
|
715 | - 'h1', |
|
716 | - 'h2', |
|
717 | - 'h3', |
|
718 | - 'h4', |
|
719 | - 'h5', |
|
720 | - 'h6', |
|
721 | - 'header', |
|
722 | - 'hgroup', |
|
723 | - 'hr', |
|
724 | - 'menu', |
|
725 | - 'nav', |
|
726 | - 'ol', |
|
727 | - 'p', |
|
728 | - 'pre', |
|
729 | - 'section', |
|
730 | - 'table', |
|
731 | - 'ul', |
|
732 | - ], |
|
733 | - true |
|
734 | - ) |
|
735 | - ) |
|
736 | - ) |
|
737 | - ); |
|
703 | + $nextSibling->tagName, |
|
704 | + [ |
|
705 | + 'address', |
|
706 | + 'article', |
|
707 | + 'aside', |
|
708 | + 'blockquote', |
|
709 | + 'dir', |
|
710 | + 'div', |
|
711 | + 'dl', |
|
712 | + 'fieldset', |
|
713 | + 'footer', |
|
714 | + 'form', |
|
715 | + 'h1', |
|
716 | + 'h2', |
|
717 | + 'h3', |
|
718 | + 'h4', |
|
719 | + 'h5', |
|
720 | + 'h6', |
|
721 | + 'header', |
|
722 | + 'hgroup', |
|
723 | + 'hr', |
|
724 | + 'menu', |
|
725 | + 'nav', |
|
726 | + 'ol', |
|
727 | + 'p', |
|
728 | + 'pre', |
|
729 | + 'section', |
|
730 | + 'table', |
|
731 | + 'ul', |
|
732 | + ], |
|
733 | + true |
|
734 | + ) |
|
735 | + ) |
|
736 | + ) |
|
737 | + ); |
|
738 | 738 | } |
739 | 739 | |
740 | 740 | protected function domNodeToString(\DOMNode $node): string |
@@ -769,9 +769,9 @@ discard block |
||
769 | 769 | } |
770 | 770 | |
771 | 771 | $html .= '<!DOCTYPE ' . $child->name . '' |
772 | - . ($child->publicId ? ' ' . $tmpTypePublic . ' "' . $child->publicId . '"' : '') |
|
773 | - . ($child->systemId ? ' ' . $tmpTypeSystem . ' "' . $child->systemId . '"' : '') |
|
774 | - . '>'; |
|
772 | + . ($child->publicId ? ' ' . $tmpTypePublic . ' "' . $child->publicId . '"' : '') |
|
773 | + . ($child->systemId ? ' ' . $tmpTypeSystem . ' "' . $child->systemId . '"' : '') |
|
774 | + . '>'; |
|
775 | 775 | } |
776 | 776 | |
777 | 777 | } elseif ($child instanceof \DOMElement) { |
@@ -509,7 +509,7 @@ discard block |
||
509 | 509 | 0 == \preg_match('/["\'=<>` \t\r\n\f]+/', $attribute->value); |
510 | 510 | |
511 | 511 | $attr_val = $attribute->value; |
512 | - $attrstr .= ($omitquotes ? '' : '"') . $attr_val . ($omitquotes ? '' : '"'); |
|
512 | + $attrstr .= ($omitquotes ? '' : '"').$attr_val.($omitquotes ? '' : '"'); |
|
513 | 513 | $attrstr .= ' '; |
514 | 514 | } |
515 | 515 | } |
@@ -773,23 +773,23 @@ discard block |
||
773 | 773 | $tmpTypePublic = 'PUBLIC'; |
774 | 774 | } |
775 | 775 | |
776 | - $html .= '<!DOCTYPE ' . $child->name . '' |
|
777 | - . ($child->publicId ? ' ' . $tmpTypePublic . ' "' . $child->publicId . '"' : '') |
|
778 | - . ($child->systemId ? ' ' . $tmpTypeSystem . ' "' . $child->systemId . '"' : '') |
|
776 | + $html .= '<!DOCTYPE '.$child->name.'' |
|
777 | + . ($child->publicId ? ' '.$tmpTypePublic.' "'.$child->publicId.'"' : '') |
|
778 | + . ($child->systemId ? ' '.$tmpTypeSystem.' "'.$child->systemId.'"' : '') |
|
779 | 779 | . '>'; |
780 | 780 | } |
781 | 781 | |
782 | 782 | } elseif ($child instanceof \DOMElement) { |
783 | 783 | |
784 | - $html .= \rtrim('<' . $child->tagName . ' ' . $this->domNodeAttributesToString($child)); |
|
785 | - $html .= '>' . $this->domNodeToString($child); |
|
784 | + $html .= \rtrim('<'.$child->tagName.' '.$this->domNodeAttributesToString($child)); |
|
785 | + $html .= '>'.$this->domNodeToString($child); |
|
786 | 786 | |
787 | 787 | if ( |
788 | 788 | $this->doRemoveOmittedHtmlTags === false |
789 | 789 | || |
790 | 790 | !$this->domNodeClosingTagOptional($child) |
791 | 791 | ) { |
792 | - $html .= '</' . $child->tagName . '>'; |
|
792 | + $html .= '</'.$child->tagName.'>'; |
|
793 | 793 | } |
794 | 794 | |
795 | 795 | if ($this->doRemoveWhitespaceAroundTags === false) { |
@@ -835,7 +835,7 @@ discard block |
||
835 | 835 | |
836 | 836 | } elseif ($child instanceof \DOMComment) { |
837 | 837 | |
838 | - $html .= '<!--' . $child->textContent . '-->'; |
|
838 | + $html .= '<!--'.$child->textContent.'-->'; |
|
839 | 839 | |
840 | 840 | } |
841 | 841 | } |
@@ -890,7 +890,7 @@ discard block |
||
890 | 890 | */ |
891 | 891 | public function minify($html, $decodeUtf8Specials = false): string |
892 | 892 | { |
893 | - $html = (string)$html; |
|
893 | + $html = (string) $html; |
|
894 | 894 | if (!isset($html[0])) { |
895 | 895 | return ''; |
896 | 896 | } |
@@ -926,25 +926,25 @@ discard block |
||
926 | 926 | // ------------------------------------------------------------------------- |
927 | 927 | |
928 | 928 | // Remove extra white-space(s) between HTML attribute(s) |
929 | - $html = (string)\preg_replace_callback( |
|
929 | + $html = (string) \preg_replace_callback( |
|
930 | 930 | '#<([^/\s<>!]+)(?:\s+([^<>]*?)\s*|\s*)(/?)>#', |
931 | - function ($matches) { |
|
932 | - return '<' . $matches[1] . (string)\preg_replace('#([^\s=]+)(\=([\'"]?)(.*?)\3)?(\s+|$)#s', ' $1$2', $matches[2]) . $matches[3] . '>'; |
|
931 | + function($matches) { |
|
932 | + return '<'.$matches[1].(string) \preg_replace('#([^\s=]+)(\=([\'"]?)(.*?)\3)?(\s+|$)#s', ' $1$2', $matches[2]).$matches[3].'>'; |
|
933 | 933 | }, |
934 | 934 | $html |
935 | 935 | ); |
936 | 936 | |
937 | 937 | if ($this->doRemoveSpacesBetweenTags === true) { |
938 | 938 | // Remove spaces that are between > and < |
939 | - $html = (string)\preg_replace('/(>) (<)/', '>$2', $html); |
|
939 | + $html = (string) \preg_replace('/(>) (<)/', '>$2', $html); |
|
940 | 940 | } |
941 | 941 | |
942 | 942 | // ------------------------------------------------------------------------- |
943 | 943 | // Restore protected HTML-code. |
944 | 944 | // ------------------------------------------------------------------------- |
945 | 945 | |
946 | - $html = (string)\preg_replace_callback( |
|
947 | - '/<(?<element>' . $this->protectedChildNodesHelper . ')(?<attributes> [^>]*)?>(?<value>.*?)<\/' . $this->protectedChildNodesHelper . '>/', |
|
946 | + $html = (string) \preg_replace_callback( |
|
947 | + '/<(?<element>'.$this->protectedChildNodesHelper.')(?<attributes> [^>]*)?>(?<value>.*?)<\/'.$this->protectedChildNodesHelper.'>/', |
|
948 | 948 | [$this, 'restoreProtectedHtml'], |
949 | 949 | $html |
950 | 950 | ); |
@@ -963,14 +963,14 @@ discard block |
||
963 | 963 | |
964 | 964 | $html = \str_replace( |
965 | 965 | [ |
966 | - 'html>' . "\n", |
|
967 | - "\n" . '<html', |
|
968 | - 'html/>' . "\n", |
|
969 | - "\n" . '</html', |
|
970 | - 'head>' . "\n", |
|
971 | - "\n" . '<head', |
|
972 | - 'head/>' . "\n", |
|
973 | - "\n" . '</head', |
|
966 | + 'html>'."\n", |
|
967 | + "\n".'<html', |
|
968 | + 'html/>'."\n", |
|
969 | + "\n".'</html', |
|
970 | + 'head>'."\n", |
|
971 | + "\n".'<head', |
|
972 | + 'head/>'."\n", |
|
973 | + "\n".'</head', |
|
974 | 974 | ], |
975 | 975 | [ |
976 | 976 | 'html>', |
@@ -989,10 +989,10 @@ discard block |
||
989 | 989 | $replace = []; |
990 | 990 | $replacement = []; |
991 | 991 | foreach (self::$selfClosingTags as $selfClosingTag) { |
992 | - $replace[] = '<' . $selfClosingTag . '/>'; |
|
993 | - $replacement[] = '<' . $selfClosingTag . '>'; |
|
994 | - $replace[] = '<' . $selfClosingTag . ' />'; |
|
995 | - $replacement[] = '<' . $selfClosingTag . '>'; |
|
992 | + $replace[] = '<'.$selfClosingTag.'/>'; |
|
993 | + $replacement[] = '<'.$selfClosingTag.'>'; |
|
994 | + $replace[] = '<'.$selfClosingTag.' />'; |
|
995 | + $replacement[] = '<'.$selfClosingTag.'>'; |
|
996 | 996 | } |
997 | 997 | $html = \str_replace( |
998 | 998 | $replace, |
@@ -1000,7 +1000,7 @@ discard block |
||
1000 | 1000 | $html |
1001 | 1001 | ); |
1002 | 1002 | |
1003 | - $html = (string)\preg_replace('#<\b(' . $CACHE_SELF_CLOSING_TAGS . ')([^>]*+)><\/\b\1>#', '<\\1\\2>', $html); |
|
1003 | + $html = (string) \preg_replace('#<\b('.$CACHE_SELF_CLOSING_TAGS.')([^>]*+)><\/\b\1>#', '<\\1\\2>', $html); |
|
1004 | 1004 | |
1005 | 1005 | // ------------------------------------ |
1006 | 1006 | // check if compression worked |
@@ -1101,7 +1101,7 @@ discard block |
||
1101 | 1101 | } |
1102 | 1102 | |
1103 | 1103 | $attrs = []; |
1104 | - foreach ((array)$attributes as $attrName => $attrValue) { |
|
1104 | + foreach ((array) $attributes as $attrName => $attrValue) { |
|
1105 | 1105 | |
1106 | 1106 | // ------------------------------------------------------------------------- |
1107 | 1107 | // Remove optional "http:"-prefix from attributes. |
@@ -1176,14 +1176,14 @@ discard block |
||
1176 | 1176 | } |
1177 | 1177 | |
1178 | 1178 | $this->protectedChildNodes[$counter] = $element->text(); |
1179 | - $element->getNode()->nodeValue = '<' . $this->protectedChildNodesHelper . ' data-' . $this->protectedChildNodesHelper . '="' . $counter . '"></' . $this->protectedChildNodesHelper . '>'; |
|
1179 | + $element->getNode()->nodeValue = '<'.$this->protectedChildNodesHelper.' data-'.$this->protectedChildNodesHelper.'="'.$counter.'"></'.$this->protectedChildNodesHelper.'>'; |
|
1180 | 1180 | |
1181 | 1181 | ++$counter; |
1182 | 1182 | } |
1183 | 1183 | |
1184 | 1184 | foreach ($dom->find('code, nocompress') as $element) { |
1185 | 1185 | $this->protectedChildNodes[$counter] = $element->parentNode()->innerHtml(); |
1186 | - $element->getNode()->parentNode->nodeValue = '<' . $this->protectedChildNodesHelper . ' data-' . $this->protectedChildNodesHelper . '="' . $counter . '"></' . $this->protectedChildNodesHelper . '>'; |
|
1186 | + $element->getNode()->parentNode->nodeValue = '<'.$this->protectedChildNodesHelper.' data-'.$this->protectedChildNodesHelper.'="'.$counter.'"></'.$this->protectedChildNodesHelper.'>'; |
|
1187 | 1187 | |
1188 | 1188 | ++$counter; |
1189 | 1189 | } |
@@ -1196,11 +1196,11 @@ discard block |
||
1196 | 1196 | continue; |
1197 | 1197 | } |
1198 | 1198 | |
1199 | - $this->protectedChildNodes[$counter] = '<!--' . $text . '-->'; |
|
1199 | + $this->protectedChildNodes[$counter] = '<!--'.$text.'-->'; |
|
1200 | 1200 | |
1201 | 1201 | /* @var $node \DOMComment */ |
1202 | 1202 | $node = $element->getNode(); |
1203 | - $child = new \DOMText('<' . $this->protectedChildNodesHelper . ' data-' . $this->protectedChildNodesHelper . '="' . $counter . '"></' . $this->protectedChildNodesHelper . '>'); |
|
1203 | + $child = new \DOMText('<'.$this->protectedChildNodesHelper.' data-'.$this->protectedChildNodesHelper.'="'.$counter.'"></'.$this->protectedChildNodesHelper.'>'); |
|
1204 | 1204 | $element->getNode()->parentNode->replaceChild($child, $node); |
1205 | 1205 | |
1206 | 1206 | ++$counter; |
@@ -1409,7 +1409,7 @@ discard block |
||
1409 | 1409 | continue; |
1410 | 1410 | } |
1411 | 1411 | |
1412 | - $attrValue .= \trim($class) . ' '; |
|
1412 | + $attrValue .= \trim($class).' '; |
|
1413 | 1413 | } |
1414 | 1414 | $attrValue = \trim($attrValue); |
1415 | 1415 |