为了账号安全,请及时绑定邮箱和手机立即绑定

警告:stripos()在php中至少需要2个参数

警告:stripos()在php中至少需要2个参数

PHP
互换的青春 2021-05-18 05:14:52
我在php中编写了一个简单的函数,并根据传递的数组索引值将参数传递给大写字母,但出现此错误警告:stripos()至少需要2个参数我做错了什么,任何人都可以建议我。我是php的新手,现在才开始学习。<?php function doCapital($string, $array) {     $stringArray = explode(",", $string);      for( $i=0; $i<count($stringArray); $i++)     {         if(stripos($stringArray)>-1){             $stringArray[$i] = $stringArray[$i].ucfirst();             echo $stringArray[$i];         }     }     return implode(" ",$stringArray); } echo doCapital('abcd', [1,2]);
查看完整描述

2 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

抱歉,在重读我的最后一个答案时,我意识到它似乎非常不友好-我猛击了一个快速答案,并且没有读回来。我要说的是,出现这样的错误是最快的解决方案,请转到php手册并检查所需的参数-在这种情况下,这是一个针和一个干草堆(即要搜索的内容和要搜索的内容)。


您可能会在这里发现相同的错误, $stringArray[$i] = $stringArray[$i].ucfirst();因为ucfirst要求传递一个字符串-在这里您像jQuery一样使用它,因此php认为您正在尝试连接一个字符串,它应该说ucfirst($stringArray[$i])


您也不能用逗号爆炸,除非您的字符串包含它们,所以在示例中,您将收到相同的字符串,我想您的意思是使用类似 str_split


我还要重申,我认为您需要使用in_array自己想要实现的目标,例如:


function doCapital($string, $array)

{

    $stringArray = str_split($string); 


    foreach($stringArray as $key => $value)

    {

        //see if the key exists in the array of characters to change the case for 

        //and update if it does

        if(in_array($key,$array)){

            $stringArray[$key] = ucfirst($value);//thinking about it I might just use strtoupper since there's only one letter anyway - I'm not sure that there's any real performance benefit either way

        }

    }

    return implode("",$stringArray);

 }


 echo doCapital('abcd', [1,2]); //outputs aBCd


查看完整回答
反对 回复 2021-05-28
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

stripos-查找不区分大小写的子字符串在字符串中首次出现的位置

您缺少第二个参数,使用该函数的正确语法stripos

stripos ($haystack ,$needle);

这里

$haystack->您要搜索的字符串

$needle ->子字符串

例如 :

$findme    = 'x';

$mystring1 = 'xyz';

$pos1 = stripos($mystring1, $findme);

if ($pos1 !== false) {

   echo "We found '$findme' in '$mystring1' at position $pos1";

}


查看完整回答
反对 回复 2021-05-28
  • 2 回答
  • 0 关注
  • 239 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号