Концепция: Я попытался получить общие страницы из 9999 и 1111. См. Ниже. (ACF Fiorentia)
MySQL запрос: SELECT * от fb_likes
где page_id
В (
ВЫБРАТЬ page_id
ОТ fb_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();
Я пытался использовать Eloquent. Это не было успешным.
Последовали шаги: сначала я выполнил подзапрос. Затем выгрузил данные в $ tempArr. Затем я передал массив $ tempArr в основной запрос.
Результат: ничего не сохраняется в $ common_likes.
Не могли бы вы помочь мне написать подзапросы mysql в одном выражении Eloquent? Спасибо.
вы строите неверный массив, и вам не нужно этого делать. попробуй заменить $tempArr
с $temp
и удалите весь этот код:
$tempArr = array();
for($i = 0; $i < count($temp); $i++){
$tempArr = array_add($tempArr, $i, $temp[$i]['page_id']);
}
print_r($tempArr);
тебе это не нужно
Других решений пока нет …