Php 从数组中删除搜索结果

Php 从数组中删除搜索结果,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一段PHP代码,它生成一系列搜索结果(来自Facebook API搜索) 是否可以包含一个超链接/按钮,当单击该按钮时,该按钮会从阵列中删除该项目并刷新以显示新阵列 我推测我将使用unset()删除该项 以下是我的代码: foreach ($search['data'] as $key => $list) { echo "<li><dt>Name:</dt>" . "<dd>" . $list['name'] . "</dd&

我有一段PHP代码,它生成一系列搜索结果(来自Facebook API搜索)

是否可以包含一个超链接/按钮,当单击该按钮时,该按钮会从阵列中删除该项目并刷新以显示新阵列

我推测我将使用unset()删除该项

以下是我的代码:

foreach ($search['data'] as $key => $list) {
   echo "<li><dt>Name:</dt>" . "<dd>" . $list['name'] . "</dd>\n";

   $gender = $facebook->api('/'.$list['id']);
   echo "<dt>Gender:</dt>" . "<dd>".ucfirst($gender['gender'])."</dd>\n";
   echo "   <a href='fb2.php?fbid=" .$list['id']. "'><img src='https://graph.facebook.com/".$list['id']."/picture?type=normal' /></a>\n";
   echo "<a href='remove.php?id= ????? ";
   echo "</li>";
    } 
    echo"</ol>"; 
foreach($search['data']as$key=>$list){
echo“
  • 名称:”.$list['Name']。“\n”; $gender=$facebook->api('/.$list['id']); 回显“性别:”.ucfirst($Gender['Gender'])。“\n”; 回音“\n”;
    echo“我知道您没有提到Javascript作为一个选项,但如果它只在前端,我会使用jQuery,如下所示:

    在HTML文件中:

    <script url="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
    
    <ol id="facebook-tags">
    
    <?php
        foreach ($search['data'] as $key => $list) {
            echo "<li><dt>Name:</dt>" . "<dd>" . $list['name'] . "</dd>\n";
            $gender = $facebook->api('/'.$list['id']);
            echo "<dt>Gender:</dt>" . "<dd>".ucfirst($gender['gender'])."</dd>\n";
            echo "   <a href='fb2.php?fbid=" .$list['id']. "'><img src='https://graph.facebook.com/".$list['id']."/picture?type=normal' /></a>\n";
            echo "<a class="remove">Remove</a>";
            echo "</li>";
        } 
    ?>
    
    </ol>
    
    <script>
        $('#facebook-tags').delegate('a.remove', 'click', function() {
            $(this).closest('li').remove();
        });
    </script>
    
    
    $(“#facebook标签”).delegate('a.remove','click',function(){
    $(this).最近('li').remove();
    });
    
    我知道您没有提到Javascript作为一个选项,但如果它只在前端,我会使用jQuery,如下所示:

    在HTML文件中:

    <script url="http://code.jquery.com/jquery-1.9.1.min.js" type="text/javascript"></script>
    
    <ol id="facebook-tags">
    
    <?php
        foreach ($search['data'] as $key => $list) {
            echo "<li><dt>Name:</dt>" . "<dd>" . $list['name'] . "</dd>\n";
            $gender = $facebook->api('/'.$list['id']);
            echo "<dt>Gender:</dt>" . "<dd>".ucfirst($gender['gender'])."</dd>\n";
            echo "   <a href='fb2.php?fbid=" .$list['id']. "'><img src='https://graph.facebook.com/".$list['id']."/picture?type=normal' /></a>\n";
            echo "<a class="remove">Remove</a>";
            echo "</li>";
        } 
    ?>
    
    </ol>
    
    <script>
        $('#facebook-tags').delegate('a.remove', 'click', function() {
            $(this).closest('li').remove();
        });
    </script>
    
    
    $(“#facebook标签”).delegate('a.remove','click',function(){
    $(this).最近('li').remove();
    });
    
    chrislondon为您提供了如何在客户端删除的建议。 但如果您想删除PHP端的一些,可以这样做:

    foreach ($search[ 'data' ] as $key => $list ) {
        if( $_GET[ 'id' ] == $key ){
    //use unset only if you store $search[ 'data' ] in session or some, to remove it totally from results
    //        unset( $search[ 'data' ][ $key ] );
            continue;
        }
    
        echo "<li><dt>Name:</dt>" . "<dd>" . $list[ 'name' ] . "</dd>\n";
    
        $gender = $facebook -> api( '/' . $list[ 'id' ] );
        echo "<dt>Gender:</dt>" . "<dd>" . ucfirst( $gender[ 'gender' ] ) . "</dd>\n";
        echo "<a href='fb2.php?fbid=" . $list[ 'id' ] . "'>
            <img src='https://graph.facebook.com/" . $list[ 'id' ] . "/picture?type=normal' /></a>\n";
        echo "<a href='remove.php?id=$key ";
        echo "</li>";
    }
    echo"</ol>";
    
    foreach($search['data']as$key=>$list){
    如果($\u GET['id']==$key){
    //仅当在会话或某些会话中存储$search['data']时才使用unset,以将其从结果中完全删除
    //取消设置($search['data'][$key]);
    继续;
    }
    echo“
  • 名称:”.$list['Name']。“\n”; $gender=$facebook->api('/.$list['id']); 回显“性别:”.ucfirst($Gender['Gender'])。“\n”; 回音“\n”;
    echo“chrislondon为您提供了如何在客户端删除的建议。 但如果您想删除PHP端的一些,可以这样做:

    foreach ($search[ 'data' ] as $key => $list ) {
        if( $_GET[ 'id' ] == $key ){
    //use unset only if you store $search[ 'data' ] in session or some, to remove it totally from results
    //        unset( $search[ 'data' ][ $key ] );
            continue;
        }
    
        echo "<li><dt>Name:</dt>" . "<dd>" . $list[ 'name' ] . "</dd>\n";
    
        $gender = $facebook -> api( '/' . $list[ 'id' ] );
        echo "<dt>Gender:</dt>" . "<dd>" . ucfirst( $gender[ 'gender' ] ) . "</dd>\n";
        echo "<a href='fb2.php?fbid=" . $list[ 'id' ] . "'>
            <img src='https://graph.facebook.com/" . $list[ 'id' ] . "/picture?type=normal' /></a>\n";
        echo "<a href='remove.php?id=$key ";
        echo "</li>";
    }
    echo"</ol>";
    
    foreach($search['data']as$key=>$list){
    如果($\u GET['id']==$key){
    //仅当在会话或某些会话中存储$search['data']时才使用unset,以将其从结果中完全删除
    //取消设置($search['data'][$key]);
    继续;
    }
    echo“
  • 名称:”.$list['Name']。“\n”; $gender=$facebook->api('/.$list['id']); 回显“性别:”.ucfirst($Gender['Gender'])。“\n”; 回音“\n”;
    echo“你收集对了,使用unset()来详细说明,我想知道如何实际运行代码。它需要AJAX吗?你收集对了,使用unset()详细说明一下,我想知道如何实际运行代码。它需要AJAX吗?非常有用,谢谢!有没有办法让它淡出而不是完全消失?显然不是必需的,但它需要nicerYep:而不是.remove()do.fadeOut()。以下是关于jQuery淡出的更多信息:非常有用,谢谢!有没有办法使其淡出而不是完全消失?显然不是必需的,但它希望使用nicerYep:而不是.remove()do.fadeOut()。以下是关于jQuery淡出的更多信息: