Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 输出可能多次出现的数据集的一个实例_Php_Mysql - Fatal编程技术网

Php 输出可能多次出现的数据集的一个实例

Php 输出可能多次出现的数据集的一个实例,php,mysql,Php,Mysql,我在筛选试图剥离的MySQL查询时遇到问题。我试图从根本上获取一个列,提取表中该列的每个条目,然后剥离它,使其仅显示一个事件,即使它发生了多次。因此,如果“bob”的值出现不止一次,我只希望它输出一次,我尝试过的所有操作要么使它没有输出,要么它仍然输出它的任何一次出现 我的代码: $query = mysqli_query($con,"SELECT org FROM accounts"); while ($row = mysqli_fetch_arra

我在筛选试图剥离的MySQL查询时遇到问题。我试图从根本上获取一个列,提取表中该列的每个条目,然后剥离它,使其仅显示一个事件,即使它发生了多次。因此,如果“bob”的值出现不止一次,我只希望它输出一次,我尝试过的所有操作要么使它没有输出,要么它仍然输出它的任何一次出现

我的代码:

 $query = mysqli_query($con,"SELECT org FROM accounts");
                     while ($row = mysqli_fetch_array($query)) {
                        $holder = array();
                        $validate = false;
                        array_push($holder, $row['org']);
                        for ($i=0; $i <= count($holder); $i++) { 
                            if($holder[$i]!=$row['org']){
                                $validate =  true;
                            }
                        }
                        if ($validate){
                        ?>
                        <option><?php echo $row['org']?></option>
                        <?php
                        }   
                     }
$query=mysqli_query($con,“从账户中选择组织”);
while($row=mysqli\u fetch\u数组($query)){
$holder=数组();
$validate=false;
数组推送($holder,$row['org']);
对于($i=0;$i)

有一个名为的php函数,它允许您在数组中搜索特定的值,而无需编写自己的循环。因此,您可以用以下内容替换整个循环:

if ( ! in_array( $row['org'], $holder ) )
    // your code here
但是,您的问题是,您正在将
$holder
变量初始化为每行的空白数组。如果要使用上述方法,您需要将该变量存储在while循环之外。例如:

 $query = mysqli_query($con,"SELECT org FROM accounts");
 $holder = array();
 while ($row = mysqli_fetch_array($query)) {
    if ( ! in_array( $row['org'], $holder ) ) {
        array_push($holder, $row['org']);

        ?>
        <option><?php echo $row['org']?></option>
        <?php  
    }
 }
$query=mysqli_query($con,“从账户中选择组织”);
$holder=数组();
while($row=mysqli\u fetch\u数组($query)){
if(!in_数组($row['org',$holder)){
数组推送($holder,$row['org']);
?>

这就是原因。谢谢Christian,这正是我需要的。我不知道这一点,并且会做一个永久性的记录,谢谢你的快速回复!不用担心,我已经用两种方法写了一个答案,你可以试试
 $query = mysqli_query($con,"SELECT DISTINCT org FROM accounts");
 while ($row = mysqli_fetch_array($query)) {
    ?>
    <option><?php echo $row['org']?></option>
    <?php
 }