2017-05-23 1 views
0

laravel 5.3에 도메인 기능을 저장하려고합니다. 여기에 사용자가 한 줄에 하나씩 텍스트 영역에 여러 도메인을 입력합니다. 올바른 형식으로 각 도메인을 확인하고 싶습니다. 작성해야하며 다른 도메인은 건너 뛰고 올바른 형식과 잘못된 형식으로 계산해야합니다. 여기 내 코드 생성과 나쁜 형식을 생략하고 정확하고 잘못된 형식을 모두 계산해야 올바른 형식유효한 형식의 도메인 만들기 및 다른 사람 건너 뛰기

$name = $request->input('domain_name'); 
$domains = preg_split('/[\r\n ,]+/', $name); 

foreach ($domains as $domain) { 
    $data['domain'] = $domain; 
    $data['user_id'] = Auth::user()->id; 
    if (empty($request->input('domain_id'))) { 
     $domain = Domain::create($data); 
    } 
} 

도메인 이름입니다. preg_matchRegex를 사용 도움말

주셔서 감사합니다
+0

* 한 줄에 하나씩 * -> ([전체 텍스트 덩어리를 분할] 수 HTTPS를 : //www.w3schools.com/php/func_string_explode.asp) .. \ n (또는 Windows의 경우 \ n \ r과 같은)과 같은 줄 구분 기호의 정의에 따라. 그런 다음 각각을 귀하의 확인과 일치시킵니다. –

+0

@BagusTesa 어떻게 검증합니까? –

+0

답장을 보면 이미 누군가가 당신을 위해 대답했습니다 :)하지만 먼저 도메인 목록을 분리해야합니다. –

답변

0

:

if(! preg_match("/^(?!-)(?:[a-zA-Zd-]{0,62}[a-zA-Zd].){1,126}(?!d+)[a-zA-Zd]{1,63}$/", $domain)) continue; // skip 

또는이 사용할 수 있습니다

if(filter_var(gethostbyname($domain), FILTER_VALIDATE_IP)) 
{ 
    return 'True'; 
} 
+0

preg_match()와 같은 오류가 발생한다. '^'는 @bara 'ayyash가 발견된다. –

+0

유효성 검사를 해 주지만 계속 진행하지만 계속 나쁜 것은 생성하지 않는다. 좋은 형식과 나쁜 형식을 모두 계산 도메인 –

+0

다른 방법을 추가했습니다 –