>PHP 프레임워크 >Laravel >내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유

내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유

藏色散人
藏色散人앞으로
2020-08-12 13:39:532809검색

프레임워크 튜토리얼의 7가지 내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유 보조 기능입니다. 도움이 필요한 친구들에게 도움이 되기를 바랍니다!

주로 내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유을 기반으로 하는 PHP 풀스택 개발자로서 저는 개발 시간을 효과적으로 단축하거나 코드 복잡성을 줄이기 위해 일부 프레임워크에서 메서드를 자주 찾습니다.

내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유다음은 제가 일상생활에서 자주 사용하는 좋은 보조방법들을 정리한 것입니다. 이 문서에 있는 대부분의 방법은 내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유7 및 이전 버전을 기반으로 합니다. (문제가 발생하면 버전 호환성 문제인지 먼저 확인하세요.)

알아봅시다

Str::limit()

첫 번째 도우미 함수 문자열을 가져오고 setter를 사용합니다. 잘라내기 특정 문자 길이 제한. 두 가지 필수 매개 변수, 즉 잘라내려는 문자열과 반환된 잘린 문자열의 문자 길이 제한이 필요합니다.

use Illuminate\Support\Str;

$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20);

// The quick brown fox ...

세 번째 선택적 매개변수를 전달하여 반환된 문자열 뒤에 표시되는 내용을 제어할 수도 있습니다.

use Illuminate\Support\Str;

$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20, '[...]');

// The quick brown fox [...]
긴 텍스트 블록을 요약으로 단축하거나 기사 목록에 대한 게시물 미리보기에 적합하다고 생각합니다.

head()

이 기능은 굉장합니다. 간단한 메소드는 일반적으로 여러 개의 중첩된 기본 PHP 함수로 구성되며, head()는 배열의 첫 번째 요소를 반환합니다. 글로벌하고 유비쿼터스적인 특성으로 인해 다양한 응용 프로그램에서 사용해 왔습니다.

$array = [100, 200, 300];

$first = head($array);

// 100

반대로 하고 싶으신가요? 배열의 마지막 요소를 가져오려면 last 메서드를 사용하세요.

$array = [100, 200, 300];

$last = last($array);

// 300
이것은 원래 배열에 전혀 영향을 주지 않기 때문에 head 및 last 메서드 사용에 관한 가장 좋은 접근 방식입니다.

last方法可以获取数组的最后一个元素。

use Illuminate\Support\Str;

$slice = Str::between('My name is Inigo Montoya.', 'My name is ', '.');

// 'Inigo Montoya'

这是关于使用head和last方法的最佳方法,因为它们根本不影响原始数组。

Str::between()

顾名思义, Str::between() 会 返回字符串中的内容。如果没有找到指定字符串,返回 null

// all of these return true
blank('');
blank('   ');
blank(null);
blank(collect());

// all of these return false
blank(true);
blank(false);
blank(0);

我喜欢用这种方式从 ()[] 之间获取信息、返回 url 中的特定部分、甚至是从 html 标签中解析数据。

blank()

它 empty()差不多,但是更好用。它根据你传入的参数是否包含实际数据,来返回一个布尔值。

use Illuminate\Support\Str;

$contains = Str::contains('My name is Inigo Montoya.', 'Inigo');

// true

$contains = Str::contains('My name is Inigo Montoya.', 'Andrew');

// false

这个辅助函数在结合表单验证、除去 API 中没有规范输入的数据时,特别有用。
它比 empty(trim()) 更好用。

Str::contains()

我们期待已久的辅助函数, 确定一个字符串中是否包含另一个字符串. 这个问题在 StackOverflow 和其他编程论坛上已经被问过很多次了, 因为目前在普通PHP程序中只能使用 strposStr::between()

이름에서 알 수 있듯이 Str::between()은

문자열의 내용을 반환합니다. 지정된 문자열을 찾을 수 없으면 null이 반환됩니다.

use Illuminate\Support\Arr;

$array = [
    ['website' => ['id' => 1, 'url' => 'reddit.com']],
    ['website' => ['id' => 2, 'url' => 'twitter.com']],
    ['website' => ['id' => 3, 'url' => 'dev.to']],
];

$names = Arr::pluck($array, 'website.url');

// ['reddit.com', 'twitter.com', 'dev.to']

저는 () 또는 [] 사이에서 정보를 가져오거나, URL의 특정 부분을 반환하거나, 심지어 html 태그에서 데이터를 구문 분석하는 이러한 방법을 좋아합니다.

blank()

It

empty()와 거의 동일하지만 사용하는 것이 더 좋습니다

. 전달한 매개변수에 실제 데이터가 포함되어 있는지 여부에 따라 부울 값을 반환합니다.

$collection = collect(['Keys', 'Krates']);

return $collection->map(function ($value) {
    return Str::upper($value);
});

// ['KEYS', 'KRATES']

return $collection->filter(function ($value) {
    return strlen($value) > 4;
});

// ['Krates']

이 도우미 기능은 양식 유효성 검사와 결합하여 API 사양에 입력되지 않은 데이터를 제거할 때 특히 유용합니다.
empty(trim())보다 사용하는 것이 좋습니다.

Str::contains()

오랫동안 기다려온 도우미 함수인 문자열에 다른 문자열이 포함되어 있는지 확인합니다

. 이 질문은 현재 StackOverflow 및 기타 프로그래밍 포럼에서 여러 번 제기되었습니다. 는 일반 PHP 프로그램에서 사용할 수 있습니다.

rrreee

최근 rfc 승인으로 PHP는 곧 자체 str_contains 메서드를 갖게 되므로 이 메서드는 더 이상 사용되지 않게 됩니다. 하지만 그때까지는 내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유에서 가장 유용한 도우미 함수 중 하나입니다.

Arr::pluck()

이 메서드는 틀림없이 이 문서에 나열한 가장 강력한 메서드 중 하나인 Arr::pluck 다차원 배열을 반복하고 주어진 값에 대한 모든 값을 검색합니다. 열쇠

. 🎜🎜간단한 예를 살펴보겠습니다. 🎜rrreee🎜배열과 점 표기법 문자열을 전달하여 원하는 키 값을 결정한 다음 다차원 배열을 반복하고 값의 1차원 배열을 반환합니다. 우리에게 지정된 키에 해당합니다. 🎜🎜나는 반환된 API 데이터에 대해 이 방법을 여러 번 사용했습니다(전체 컬렉션을 사용할 필요가 없다고 느꼈을 때). 전체 foreach 루프를 만들지 않고도 ID, 이름 또는 기타 속성의 배열을 얻는 것이 매우 쉽습니다. 🎜🎜🎜collect()🎜🎜🎜저는 컬렉션에 대해 알게 되면 절대 사용을 멈추지 않습니다. 이것은 아마도 제가 가장 많이 사용하고 있는 도우미 함수일 것입니다. 이 함수를 사용하면 🎜배열을 집합으로 변환🎜할 수 있습니다. 🎜🎜이것이 왜 중요한가요? 컬렉션에는 다양한 편의 메서드가 제공되므로 컬렉션을 함께 결합하여 가장 간단한 클로저 매개변수를 사용하여 배열에 대한 다양한 필터링, 정렬 및 수정 작업을 수행할 수 있습니다. foreach 루프도 없고 중간 변수도 없으며 코드만 정리하면 됩니다. 🎜🎜이 간단한 예를 보세요: 🎜rrreee🎜솔직히 이것은 컬렉션 빙산의 일각에 불과합니다. 저는 프로젝트에서 둘 다 사용합니다. 특히 데이터베이스 모델에서 제공되지 않는 크고 복잡한 데이터 세트를 처리할 때 더욱 그렇습니다. CSV 데이터, 외부 API 요청 및 디렉터리 구조는 모두 드롭 컬렉션에서 사용할 수 있습니다. 🎜🎜🎜이제 제가 아는 내용입니다! 🎜🎜

원본 주소: https://dev.to/aschmelyun/my-favorite-la...

번역 주소: https://learnku.com/laravel/t/43776

위 내용은 내가 가장 좋아하는 7가지 Laravel 도우미 함수 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제