Будьте осторожны, ваш getByIdUz () всегда возвращает $ id2;.. второй возврат ($ id3) никогда не достигается.если вы хотите, чтобы функция возвращала два значения, вы могли бы вернуть массив, например:
private function getByIdUz()
{
$id2 = BDR::selectBySQL("x1","SELECT * FROM id2 WHERE id='".$this->id1."' LIMIT 1");
foreach($id2 as $id2)
{
$id2 = $id2['id2'];
}
$id3 = BDR::selectBySQL("x1","SELECT * FROM id3 WHERE id='".$this->id3."' LIMIT 1");
foreach($id3 as $id3)
{
$id3 = $id3['id3'];
}
return ['id2'=>$id2, 'id3', $id3];
}
, и вы могли бы использовать
$myArray = getByIdUz();
$myId2 = $myArray['id2'];
$myId3 = $myArray['id3'];
и в своем