检测一个单元格中的单个或多个单词?

时间:2016-06-10 02:00:29

标签: php mysql

大家好我想在这类问题上找到解决方案,希望你能帮助我。

例如,我有一个表名 table1

 Id         |               Data
 1          |   Value1, Value2, Value3, Value4  

这是我想要做的。

在IF语句中,如果它检测到与列数据相同或相似的 1或更多值,则它将继续。在将变量与列数据的值进行比较时,还可以忽略命令(,)和空格()吗?

感谢先进的人!

2 个答案:

答案 0 :(得分:1)

你可以这样做

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

    $sql = "SELECT id, Data FROM table1";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
        // output data of each row
        while($row = $result->fetch_assoc()) {
            $data = $row["Data"];
            $repdata = array();
            foreach($data as $val){
               if(++$repdata[$val] > 1){
               return true;
            }
           }
           return false;
        }
    } else {
        echo "0 results";
    }
    $conn->close();
    ?> 

答案 1 :(得分:0)

感谢@amit的回答,但我使用preg_match以最简单的方式找到了此解决方案。

$data = ('value1, value2, value3, value4, value5');

if(preg_match('[value1|value2]', $row->column_name))