Php stripos可以';我找不到价值
正如您在输出中看到的,stripos无法捕获_formtoken值,任何人都可以用解决方案向我解释:Php stripos可以';我找不到价值,php,php-7,Php,Php 7,正如您在输出中看到的,stripos无法捕获_formtoken值,任何人都可以用解决方案向我解释: $value = ['_formtoken','expiry','version','pan','expiry','purchAmount','_formtoken','pan']; for($i=0;$i<count($value);$i++){ if (stripos($added, $value[$i]) == false) { echo $value[$i] .
$value = ['_formtoken','expiry','version','pan','expiry','purchAmount','_formtoken','pan'];
for($i=0;$i<count($value);$i++){
if (stripos($added, $value[$i]) == false) {
echo $value[$i] . ' => Not exists in <br>';
$added .= $value[$i];
}
else {
echo $value[$i] . ' => already exists <br>';
}
}
看起来好像您正在尝试创建数组中每个唯一值的单个字符串,对吗?如果是这样,试试这个,它更干净:
$inputArray=[''u formtoken','expiry','version','pan','expiry','purchAmount','u formtoken','pan';
//仅保留每个值的第一个匹配项
$uniqueInputArray=array\u unique($inputArray);
//输出每个值之间用单个空格分隔的值
回波内爆(“”,$uniqueInputArray);
或作为一行:
echo内爆('',数组唯一([''formtoken',expire',version',pan',expire',purchAmount',''''formtoken',pan']);
stripos可能返回0或false。如果您正在搜索的字符串位于搜索字符串的开头,它将返回0。如果在If语句中使用此选项,它的计算结果将为false。要解决此问题,请使用=
$value = ['_formtoken','expiry','version','pan','expiry','purchAmount','_formtoken','pan'];
$added = null;
for($i=0;$i<count($value);$i++){
$pos = stripos($added, $value[$i]);
if ( $pos === false) {
echo $value[$i] . ' => Not exists in <br>' . "\n";
$added .= $value[$i];
}
else {
echo $value[$i] . ' => already exists <br>'."\n";
}
}
$value=['u formtoken','expire','version','pan','expire','purchAmount','u formtoken','pan'];
$added=null;
对于($i=0;$i不存在于
过期=>在
版本=>不存在于
pan=>不存在于
到期日=>已存在
purchAmount=>不存在于
_formtoken=>已存在
pan=>已存在
添加的$added从何而来?只需将值添加到它的空变量Tripos不会检测文本中的值,请测试此代码以查看$value=['''u formtoken','=333&version=2.0&pan=4552945074567017&expiry=2211&purchAmount=150&index=2&description=gent&u formtoken='];用于($i=0;$i您是说stripos不按文档所述工作吗?我运行了您的代码片段。看起来不错。您可以在这里看到:检查此屏幕截图:stripos无法在文本中捕获它。#希望将其用作条件,感谢问题是关于substr
,而不是如何从数组中的唯一值生成字符串。
$value = ['_formtoken','expiry','version','pan','expiry','purchAmount','_formtoken','pan'];
$added = null;
for($i=0;$i<count($value);$i++){
$pos = stripos($added, $value[$i]);
if ( $pos === false) {
echo $value[$i] . ' => Not exists in <br>' . "\n";
$added .= $value[$i];
}
else {
echo $value[$i] . ' => already exists <br>'."\n";
}
}
_formtoken => Not exists in <br>
expiry => Not exists in <br>
version => Not exists in <br>
pan => Not exists in <br>
expiry => already exists <br>
purchAmount => Not exists in <br>
_formtoken => already exists <br>
pan => already exists <br>