2014-10-02 4 views
0

저는 닷넷 프로그래머입니다. 이제는 재미로 PHP를 배우고 PHP가 어떤 것을 처리하는 방법을 볼 수 있습니다. 나에게있어 OOP, 세션, 보안 등과 같은 일반적인 웹 프로그래밍과 프로그래밍에 다소 공통적이기 때문에 기본 개념은 쉽다. 그러나 PHP가 닷넷 세계와 다르게 구축되어 나에게 혼란을주는 부분이있는 것 같다. 그 중 하나가 Phar 파일입니다. Dot Net에서는 어디서나 재사용 할 수있는 느슨하게 결합 된 어셈블리를 만드는 데 익숙합니다. 그러나 PHP에서 내가 읽었던 대부분의 책과 코드는 수업을 만들고 프로젝트에서 직접 사용하게됩니다. 지금 당장 가지고있는 혼란은 다음과 같습니다.PHP의 Phar 파일은 Dot Net의 어셈블리와 동일합니까?

  • Phar 파일은 Dot Net의 dll 파일과 유사합니까?
  • 그렇다면 왜 자주 사용되지 않습니까?
  • Phar 파일을 사용할 때 성능이 저하됩니까?
  • Phar 파일을 적극적으로 사용하여 재사용 가능한 코드 라이브러리를 만들 수 있습니까?

PHP의 많은 경험이 있다면 친절하게 PHP를 전문가들이 어떻게 처리하는지 알고 싶습니다.

+1

[this] (http://php.net/manual/en/phar.using.intro.php)을 읽어보십시오. 첫 번째 줄 중 하나 : "Phar 아카이브는 완벽한 PHP 애플리케이션 또는 라이브러리를 단일 파일로 배포하는 데 사용됩니다." – Wold

+0

'phar' 파일을 Windows의'exe' 파일과 같은 하나의 실행 파일 (PHP 실행 파일)로 압축 한 버전의 소스 코드를 비교할 수 있습니다. –

+0

컴파일 된 코드가 아닌 단지 압축 된 PHP 파일이므로 PHP를 사용하는 사람이별로 없으며 PHP는 웹 언어와 유사하므로 Phar 파일을 실행할 때 오버 헤드가 발생합니다 (사용시마다 압축을 풀 필요가 있음). 웹 응답 속도를 늦추십시오. – BojanT

답변

2

Phar 파일은 Dot Net의 dll 파일과 유사합니까?

아니요, 그렇지 않습니다. 단지 일반 텍스트 소스 코드의 보관 파일 일뿐입니다.

그렇다면 왜 자주 사용되지 않는 것입니까?

의 Phar이 파일을 사용하는 성능 저하가되어 매우 익숙하기 때문에?

아니요, 그들은 소스 코드이며 gzipped입니다. 압축을 푼 후에는 소스 코드 일뿐입니다.

적극적으로 Phar 파일을 사용하여 재사용 가능한 코드 라이브러리를 만들 수 있습니까?

"적극적으로"무엇을 의미합니까? 당신은 공격적으로 을 할 수 없습니다.은 타르볼을 사용합니다. 라이브러리를 사용하거나 사용하지 마십시오. 라이브러리 또는 응용 프로그램과 같은 코드를 단일 파일로 배포하기위한 보관 형식입니다. 비교적 새로운 버전의 PHP에서만 작동하기 때문에 잠재 고객을 제한 할 수 있습니다.

+0

감사합니다 meagar, 당신은 내 질문에 대답, 그냥 광범위한 사용하여 명확히하기 위해 작은 코드 라이브러리를 만드는 습관에 점점 그들을 phar 파일을 만들고 내 프로젝트에서 사용하는 의미. 다른 코멘트가 사용 될 때마다 압축을 풀 필요가 있기 때문에 오버 헤드가 있다는 것을 암시하기 때문에 성능 문제에 여전히 혼란이있을 것입니다. –

+1

@AfrazAli PHP의 inbuilt 연산 코드 캐시가이를 처리하기 때문에 오버 헤드가 없어야합니다. – Scopey