recherche

Maison  >  Questions et réponses  >  le corps du texte

PHP régulier intercepte le contenu après le nom de domaine dans l'URL

le programme php
doit correspondre au début de http:// ou https://, conserver le nom de domaine et intercepter le contenu après le nom de domaine
Par exemple, http://www.baidu.com/aa/bbb n'a besoin que de http://www.baidu .com intercepter /aa/bbb

phpcn_u1582phpcn_u15822747 Il y a quelques jours1044

répondre à tous(5)je répondrai

  • 某草草

    某草草2017-05-16 13:16:30

    Vous n’avez pas besoin d’utiliser des règles formelles pour être généreux. N’est-ce pas plus élégant ?

    $url = 'http://www.baidu.com/aa/bbb';
    var_dump(parse_url($url));
    //array(3) {
         ["scheme"]=> string(4) "http" 
         ["host"]=> string(13) "www.baidu.com" 
         ["path"]=> string(7) "/aa/bbb"
        }

    répondre
    0
  • 迷茫

    迷茫2017-05-16 13:16:30

    if(strncmp('http://', $url, 7) === 0 || strncmp('https://', $url, 8)) {
      $host = substr($url, strpos($url, '/', strncmp('http://', $url, 7) ? 8 : 7));
    } else {
      $host = null;
    }

    Si possible, essayez de ne pas utiliser d'expressions régulières

    répondre
    0
  • 巴扎黑

    巴扎黑2017-05-16 13:16:30

    Il existe de nombreuses méthodes pour cela. Puisque l'exigence est régulière, veuillez consulter le code ci-dessous

    .
        $str= 'http://www.baidu.com/aa/bbb';
        $patten = '/(http[s]?:\/\/\w*.\w*.\w*\/).*/';
        preg_match($patten, $str, $match);
    
        echo $match[1];

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-16 13:16:30

    https://www.bytelang.com/o/s/...

    Référez-vous aux réponses ci-dessous

    répondre
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:16:30

    N'est-il pas préférable d'utiliser exploser ? Pourquoi utiliser des expressions régulières

    répondre
    0
  • Annulerrépondre