根据可变内容查找模式

时间:2016-12-15 11:05:02

标签: php

我想做一些非常简单的事情,但我不知道php中的正确代码。

我有一个变量$ go,其内容为GO:xxxxx

我想查询一个变量的内容是否有“GO:”模式和其他东西,回声一下,但如果不是,则回显另一个东西

我想声明一个if语句,如:

if (preg_match('/GO/', $go) {
echo "something";
}
else {
echo "another thing";

但我不能让它发挥作用......

我想在我的脚本的这一部分之间嵌入这个声明:

$result = mysqli_query($enlace,"select count(distinct name2) as total from " . $table . " where go_id like '%" . $go . "%'");

$items = mysqli_fetch_assoc($result);

echo "<br/>";

echo "<b> The total number of genes according to GO code is:</b> " . $items['total'];

mysqli_free_result($result);

$result2 = mysqli_query($enlace,"select count(distinct name2) as total from " . $table . " where db_object_name like '%" . $go . "%'");

$items2 = mysqli_fetch_assoc($result2);

echo "<br/>";

echo "<b>The total number of genes according to GO association is:</b> " . $items2['total'];

mysqli_free_result($result2);

就像现在一样,变量$ go可以有一个像GO:xxxx或随机句子的值,并且,使用这个代码,我得到两个字符串,一个值为0,另一个值根据总外观值匹配$ go content。

我想要的是声明一个if语句,以便它只打印一个字符串,一个根据$ go内容具有匹配数的字符串,但不是两者。

任何帮助?

2 个答案:

答案 0 :(得分:3)

使用strpos()

if (strpos($go, 'GO:') !== false) {
    echo 'true';
}

答案 1 :(得分:1)

试试这个

回声(!strpos($ go,&#39; GO:&#39;))? &#34;另一件事&#34; :&#34;东西&#34 ;;

一定会工作