2

概念:我试图从 9999 和 1111 中检索公共页面。见下文。(ACF 佛罗伦萨)

PHPMyAdmin数据库

mysql 查询:SELECT * from fb_likeswhere page_idIN (

page_idfb_likes哪里选择user_fb_id= 9999)

user_fb_id= 1111

PHP代码:

     $temp = FBLikes::where('user_fb_id','=','1111')->get(array('page_id'));
        $tempArr = array();
        for($i = 0; $i < count($temp); $i++){
            $tempArr = array_add($tempArr, $i, $temp[$i]['page_id']);
        }
        print_r($tempArr);
        $common_likes = FBlikes::whereIn('page_id', $tempArr)->where('user_fb_id','=', '9999')->get();

我尝试使用雄辩。它没有成功。

后续步骤:我首先执行了子查询。然后将数据转储到 $tempArr。然后我将数组 $tempArr 传递给主查询。

结果:$common_likes 中没有保存任何内容。

您能帮我在单个 Eloquent 语句中编写 mysql 子查询吗?谢谢你。

4

1 回答 1

1

你建立了无效的数组,你不必这样做。尝试替换$tempArr$temp删除所有这些代码:

$tempArr = array();
for($i = 0; $i < count($temp); $i++){
    $tempArr = array_add($tempArr, $i, $temp[$i]['page_id']);
}
print_r($tempArr);

你不需要它。

于 2016-01-04T08:03:30.910 回答