Maison  >  Article  >  développement back-end  >  Comment supprimer une chaîne entre les caractères spécifiés en php

Comment supprimer une chaîne entre les caractères spécifiés en php

藏色散人
藏色散人original
2021-09-22 09:18:242274parcourir

Comment supprimer la chaîne entre les caractères spécifiés en php : 1. Créez un exemple de fichier PHP ; 2. Entrez le code "public function getStr(){...}" ; la méthode getStr Les caractères au milieu des caractères suffisent.

Comment supprimer une chaîne entre les caractères spécifiés en php

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur Dell G3.

Comment supprimer une chaîne entre des caractères spécifiés en php ?

PHP supprime les caractères entre les deux caractères spécifiés dans la chaîne

J'ai rencontré un problème dans le projet et je dois supprimer les caractères entre les deux caractères spécifiés dans la chaîne.

public function getStr()
    {
        //str是一串有规则的字符串,现在我想删除其中一段,代码如下
        $str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
        //获取开始位置,选择 ,2,(防止和时间的年份冲突)
        $i1=strpos($str,',2,');//开始位置
        $i2=strpos($str,',',$i1+3);//结束位置
        $str1=substr($str,0,$i1) . substr($str,$i2,strlen($str));
        echo $str."<br>".$str1;//换行输出,对比结果
        //输出结果 
        //1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //1,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //OK,完美。
    }

Encapsulez-le simplement (on a l'impression que c'est gênant après l'encapsulation), mais enregistrons-le

public function getStr($str,$str1,$n1,$str2,$n2)
    {
        /**
         * $str为要处理的字符串
         * $str1为选中的唯一字符串
         * $n1为从$str中第几个字符串开始截取
         * $str2为选中的唯一字符串
         * $n2为从$str2中第几个字符串结束截取
         */
        $i1=strpos($str,$str1)+$n1;
        $i2=strpos($str,$str2,$i1)+$n2;
        $str1=substr($str,0,$i1-1) . substr($str,$i2,strlen($str));
        return $str1;
    }

Par exemple, en utilisant la méthode d'encapsulation, procédez comme suit

//对应的五个值如下 
$str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
$str1=",2,";
$n1="2";            //从指定值中的2 开始截取
$str2=",";
$n2="1";            //截取到指定值中的第一位,也就是,
echo(getStr($str,$str1,$n1,$str2,$n2));    //嗯,结果也一样,就是感觉没弄好,也不简单哈

PS : Si vous le rencontrez, faisons un résumé

Apprentissage recommandé :《Tutoriel vidéo PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn