我制作了一个简单的程序,用于检查字符串是否包含在变量中,或者不使用strpos,但是当我检查它时,我发现它只是检查最后一个数组。
这是我的php
$branda = $_GET['brand'];
$brandq = $row['company'];
$my3 = array($brandq);
foreach($my3 as $map){
$mane=strpos($branda,$map);
if($mane !== false)
{
$myfunction2 = "'".str_replace(",","','",$branda)."'";
$condition2='and product.company IN('.$myfunction2.') ';
} else {
$condition2='';
}
}
答案 0 :(得分:0)
我做了一些假设:
// Assumptions
$row['company'] = array("apple","samsung","microsoft","sony");
$_GET['brand'] = "microsoft";
此代码应该是正确的:
$branda = $_GET['brand'];
$brandq = $row['company'];
$condition2 = "";
foreach ($brandq as $map) {
$mane = strpos($branda,$map);
if ($mane !== false) {
$myfunction2 = "'".str_replace(",","','",$branda)."'";
$condition2 .='and product.company IN('.$myfunction2.') ';
}
}
回应结果:
echo $condition2 . PHP_EOL;
输出:and product.company IN('microsoft')
答案 1 :(得分:0)
我做了一些假设:
// Assumptions
$row['company'] = array("apple","samsung","microsoft","sony");
$_GET['brand'] = "microsoft";
This code should be correct:
$branda = $_GET['brand'];
$brandq = $row['company'];
$condition2 = "";
foreach ($brandq as $map) {
$mane = strpos($branda,$map);
if ($mane !== false) {
$myfunction2 = "'".str_replace(",","','",$branda)."'";
$condition2 .='and product.company IN('.$myfunction2.') ';
}
}
回应结果:
echo $condition2 . PHP_EOL;
Output: and product.company IN('microsoft')