PHP 코드 압축 풀기

PHP 코드가 한 줄에 뭉쳐 있나요? 이 페이지는 그 코드를 독립된 문장으로 다시 펼치며, 중괄호는 자기 줄에 두고 각 블록은 들여씁니다. 변수 이름은 복원되지 않고, 제거된 주석은 영원히 사라지지만, 구조는 따라가기 쉬워집니다.

PHP 압축 푸는 방법

  1. 1

    한 줄 코드 붙여 넣기

    압축된 PHP를 복사해 PHP 코드 상자에 넣으세요.

  2. 2

    들여쓰기 고르기

    2칸 또는 4칸을 고르세요. 깊게 중첩된 코드는 4칸이 훑어보기 쉽습니다.

  3. 3

    결과로 이동하기

    펼쳐진 코드가 다음 페이지에 나타납니다.

  4. 4

    확인 후 복사하기

    내용을 훑어본 다음 에디터에 복사하세요.

압축 풀기가 할 수 있는 일과 할 수 없는 일

미니파이어는 공백과 주석을 제거하고, 일부는 이름도 줄입니다. 레이아웃을 펼치는 것은 쉬운 부분입니다. 문장은 세미콜론에서 끝나고, 블록은 중괄호에서 시작하고 끝납니다. 이 도구는 바로 그 표지를 사용합니다. 제거된 주석, 원래 변수 이름, 원래 서식 선택은 복원할 수 없습니다.

예제

압축된 입력:

<?php if($age>=18){echo "adult";}else{echo "minor";}

펼쳐진 결과:

<?php if($age>=18)
{
    echo "adult";
}
else
{
    echo "minor";
}

이 도구는 쉼표 뒤에도 공백을 추가합니다. 그래서 ["red","green"]은 ["red", "green"]이 됩니다. 이는 인수 사이뿐 아니라 코드 안의 모든 쉼표에 적용됩니다.

알아 둘 한계

  • "a,b"처럼 문자열 안에 있는 쉼표에도 쉼표 뒤 공백이 추가됩니다. 이 규칙이 코드를 읽기 전에 전체 텍스트에 적용되기 때문입니다. 나중에 텍스트 리터럴을 확인하세요.
  • 주석 안의 세미콜론이나 중괄호는 코드로 취급되어, 그 자리에서 새 줄이 시작됩니다.
  • 연산자 주변의 간격은 그대로 유지됩니다. 압축 전 원본에 $a+$b라고 쓰여 있었다면 결과도 그렇게 나옵니다.
  • 인코딩된 문자열이나 실행 시점에 평가되는 페이로드를 사용하는 난독화된 코드는, 깔끔하게 배치해도 여전히 읽기 어렵습니다. 정체를 알 수 없는 코드는 조심해서 다루고, 무엇을 하는지 보려고 실행하지 마세요.

결과 읽는 법

가장 바깥쪽 중괄호부터 시작하세요. 이제 왼쪽 가장자리에 있으며, 거기서부터 안쪽으로 들어가면 됩니다. 함수와 클래스의 헤더는 코드가 무엇을 정의하는지 보여 주고, 그 아래 들여쓰기된 줄은 각 부분이 무엇을 하는지 보여 줍니다. 함께 실행되던 문장들이 이제 한 줄에 하나씩 놓여 있어서, 일이 일어나는 순서를 따라갈 수 있습니다.

압축된 코드를 다루는 팁

  • 직접 편집하지 말고, 먼저 포맷한 다음 읽으세요.
  • 원본 파일을 보관하세요. 펼쳐진 레이아웃은 읽기 위한 것이며, 나중에 에디터의 포매터로 다시 스타일을 맞출 수 있습니다.
  • 파일에 최상위 함수가 여러 개 있다면 함께 붙여 넣으세요. 각 함수는 닫는 중괄호에서 끝나므로 경계가 쉽게 보입니다.

원본과 비교하기

압축 전 파일이 아직 있다면, 특이한 문자열을 몇 개 검색해서 펼쳐진 텍스트에도 나타나는지 확인하세요. 아무것도 빠지지 않았는지 빠르게 확인하는 방법이며, 중요한 곳에 복사하기 전에 해 볼 만합니다.

자주 묻는 질문

아니요. 미니파이어가 줄인 이름은 사라집니다. 복원되는 것은 레이아웃뿐입니다.

아니요. 소스에서 주석이 제거되면 되돌릴 것이 남지 않습니다.

단순한 코드라면 같아야 합니다. 공백만 바뀌기 때문입니다. 문자열 리터럴 안의 쉼표 간격이 주요 예외이므로 문자열을 확인하세요.

아니요. 이 도구는 레이아웃만 바꿉니다. 인코딩되거나 패킹된 페이로드는 그대로 남습니다.

관련 도구

이 도구는 다른 언어로도 제공됩니다

사용 가이드와 활용 사례