Laravel 사용자 정의 도우미 기능 – 빠른 팁

Barbara Streisand
풀어 주다: 2024-10-23 01:07:31
원래의
338명이 탐색했습니다.

도우미 기능은 Laravel 개발자들 사이에서 꽤 인기가 있습니다. 단일 명령문을 사용하여 코드에서 사용할 수 있는 몇 가지 영리한 알고리즘에 대한 액세스를 제공합니다.

아마도 가장 잘 알려진 도우미 함수는 내부 애플리케이션 URL을 생성할 수 있는 url()일 것입니다.

또 다른 훌륭한 도우미는 retry() 함수입니다. 예를 들면 다음과 같습니다: https://laravel.com/docs/11.x/helpers#method-retry

예외가 발생한 경우 명령문을 특정 횟수만큼 재시도하는 쉬운 방법입니다. 주로 외부 API 호출에 사용되는데, 실제로 최근 Laravel HTTP 클라이언트에 메소드로 통합되었습니다.

$response = Http::retry(3, 100)->post(/* ... */);
로그인 후 복사

HTTP 클라이언트에 대한 자세한 내용은 전용 기사: https://inspector.dev/laravel-http-client-overview-and-monitoring/

Laravel 도우미 함수 사용 사례

때때로 비즈니스 로직과 관련된 작업을 자동화하고 이를 도우미 기능으로 캡슐화하는 것이 매우 편리할 수 있습니다. 저는 이 사용 사례에 완벽하게 맞는 연관 배열을 위한 array_map 구현에 대해 썼습니다.

이 기능의 목적을 알아보려면 기사를 참조하세요. 이러한 맥락에서 저는 이 기능을 Laravel 애플리케이션 내에서 사용할 수 있는 맞춤 도우미 기능으로 만들고 싶습니다.

새로운 Laravel 도우미 함수를 등록하는 방법

먼저 Laravel 프로젝트의 app/ 디렉터리에 helper.php라는 새 파일을 만듭니다.

Laravel custom helper functions – Fast Tips

아래 코드를 붙여넣어 array_map_assoc 함수를 파일에 선언하세요.

if (!function_exists('array_map_assoc')) {
    /**
     * Apply a mapping callback receiving key and value as arguments.
     * The standard array_map doesn't pass the key to the callback. But in the case of associative arrays,
     * it could be really helpful.
     *
     * array_map_assoc(function ($key, $value) {
     *  ...
     * }, $items)
     *
     * @param callable $callback
     * @param array $array
     * @return array
     */
    function array_map_assoc(callable $callback, array $array): array
    {
        // map original array keys, and call $callable with $key and $value.
        return array_map(function($key) use ($callback, $array){
            return $callback($key, $array[$key]);
        }, array_keys($array));
    }
}
로그인 후 복사

보시다시피 함수 선언은 동일한 이름의 함수 등록을 피하기 위해 if로 래핑됩니다.

Composer의 자동 로드를 통해 도우미 파일 포함

Laravel은 사용자 정의 도우미 파일을 자동으로 로드하지 않으므로 자동 로드 생성 중에 파일을 포함하도록 작곡가에게 수동으로 지시해야 합니다.

Laravel 프로젝트의 작곡가.json 파일에서 "autoload" 섹션을 찾아 "files" 키워드를 추가하세요.

"autoload": {
    "psr-4": {
        "App\": "app/",
        "Database\Factories\": "database/factories/",
        "Database\Seeders\": "database/seeders/"
    },
    "files": [
        "app/helpers.php"
    ]
},
로그인 후 복사

파일을 추가한 후 터미널에서 Composer dump-autoload를 실행하여 Composer의 자동 로드 파일을 새로 고치세요.

Laravel 도우미 기능 사용

도우미 파일이 로드되면 다른 PHP 함수와 마찬가지로 Laravel 애플리케이션 어디에서나 사용자 정의 함수를 사용할 수 있습니다.

$histogram = array_map_assoc(function ($key, $value) {
    return [
        'label' => $key,
        'value' => $value['doc_count']
    ];
}, $data);
로그인 후 복사

코드베이스를 체계적으로 정리하는 데 도움이 되기를 바랍니다.

더 많은 기술 관련 기사를 보려면 Linkedin이나 X에서 저를 팔로우하세요.

PHP 애플리케이션을 무료로 모니터링하세요

Inspector는 소프트웨어 개발자를 위해 특별히 설계된 코드 실행 모니터링 도구입니다. 서버 수준에서 아무것도 설치할 필요가 없습니다. Laravel 또는 Symfony 패키지만 설치하면 바로 사용할 수 있습니다.

HTTP 모니터링, 데이터베이스 쿼리 통찰력, 경고 및 알림을 선호하는 메시징 환경으로 전달하는 기능을 찾고 있다면 Inspector를 무료로 사용해 보세요. 계정을 등록하세요.

또는 웹사이트에서 자세한 내용을 알아보세요: https://inspector.dev

Laravel custom helper functions – Fast Tips

위 내용은 Laravel 사용자 정의 도우미 기능 – 빠른 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!