문제

어떻게 프로그램에서 사용 가능 세트의 라이브러리 API 함수와 작곡가 설치된 라이브러리?

나는 라이브러리 함수 API 를 사용하여 인터페이스 라이브러리 내부 개체를 원하는 작곡가 자동으로 로드하는 API 를 사용할 수 있도록 후 설치할 필요 없이 엔드 개발자를 포함한 파일입니다.

현재 라이브러리에 의해 로드 그냥을 포함하여 __init__.php 와 그것을 포함한 API 기능과 자동 로더는 경우 필요합니다.

감사합니다!

도움이 되었습니까?

해결책

작곡가 항상 필요로 할 것이 결국-개발자를 포함 하나의 파일 vendor/autoload.php.할 수 없습니다 더 쉽게입니다.

하지만 무엇을 할 수 있는 것을 포함하여 __init__.php 선택 사항이기 때문에 통합의 작곡가 사용할 수 있는 자동 로더 대신 합니다.이것은 또한 작업에 대한 기능을 수 있는지 정말로 자동 작곡가 제공하는 항상 파일을 포함 되는 경우 그렇게 말했습니다.

그래서 결국 당신의 작곡가로 구성된 API 라이브러리는 다음과 같습니다.

{
    "name": "yourvendorname/yourfancylibraryname",
    "license": "any open source identifier",
    "autoload": {
        "psr-0": {
            "Foo_Api": "src/files"
        },
        "classmap": [
            "extra/folders_with_any_other_class_not_conforming_to_psr0_or_psr4"
        ],
        "files": [
            "functions/file_with_your_function_definitions.php"
        ]
    }
}

모르겠는지에 대한 귀하의 수업 준수 PSR-0 또는 PSR-4,그러나 그들이 할 경우,당신은 모두 이익이 당신이 선언할 수 있습 자동으로 이러한 표준입니다.그렇지 않을 경우:Classmap 당신을 도움이 될 것입니다.

귀하의 함수 정의 것으로 파일 또는 파일에서 언급한"파일".

당신이 필요하지 않 자신의 자동 로더가 이상한 작곡가입니다.

물론 당신은 또한 단순히 언급은 이전 __init__.php 으로 파일을 포함할 파일"에서"그러나 이제는 별개의 라이브러리에서 다른 모든 클래스,수은 오히려 성능을 떨어뜨릴(작곡가는 이미 아주 좋은 자동 로더-할 필요가 없는 그들의 두)과실을 제외의 모든 클래스에서는 덤프로 더 빨리 작곡가 classmap 자동 로더.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top