从foreach循环内部调用变量以放入数组内部

What I'm trying to do is get my $streamitem_imageuploaded value so I can pass it into my $json array. Has this got anything to do with a nested loop? When I send my json data back currently, all I get is undefined variable $streamitem_imageuploaded with the below code.

if($checkphoto_id['photo_id']==0){
    $sqlhhh = "SELECT * FROM userphotos WHERE photo_name='".$checkphoto_id['photo_title']."' AND photo_ownerid='".$checkphoto_id['streamitem_creator']."' AND photo_datetime='".$checkphoto_id['streamitem_timestamp']."' ORDER BY photo_id ASC";
    $resulthhh = mysqli_query ($mysqli,$sqlhhh)or die(mysqli_error($mysqli)); 
    $photo_num=mysqli_num_rows($resulthhh);
    $images = array();
    while ($rowhhh = mysqli_fetch_assoc($resulthhh)) {
        $imageArray = array(
                            'data' => $rowhhh['photo_imagedata'],
                            'photo_streamitem_id' => $rowhhh['photo_streamitem_id'],
                            'id' => $rowhhh['photo_id']
                            );
        $images[] = $imageArray;
    }
    foreach ($images as  $image) {
        if($photo_num==1){
            $streamitem_imageuploaded='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:200px;height:200px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
        }else{
            $streamitem_imageuploaded[]='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:100px;height:100px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
        }
    }
}

Store the outputted value inside my $json array

$json = array(
    'posts' => array(),
    'count' => $rowcount,
    'commentlinktoggle' => $sendcommentlinktoggle,
    'streamitem_formholder' => $streamitem_formholder,
    'stopcommentsbutton' => $stopcommentsbutton,
    'streamitem_uploadimage_count' => $streamitem_uploadimage_count,
    'streamitem_imageuploaded' => $streamitem_imageuploaded,
);

UPDATE

Edit changed and still getting same result

if($photo_num==0){
    $streamitem_imageuploaded='';
}
if($photo_num==1){
    $streamitem_imageuploaded='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:200px;height:200px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
}
if($photo_num>1){
    $streamitem_imageuploaded[]='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:100px;height:100px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
}

This code works in a standard php page no issues. just not when trying to call the variable from inside an array.

All i needed to do was to add an array outside the foreach loop and then call this within my $json array

    $streamitem_imageuploaded = array();

I used this when researching for my answer. Return all values stored in var outside foreach loop

This should work. Added some static values to simulate things. This works fine without generating undefined for your $streamitem_imageuploaded var. So problem must be in your mysql code or your other conditionals.

$rowhhh =1;
$photo_num = 1;
$images = array();
  if ($rowhhh == 1) {
    $imageArray = array(
                        'data' => $rowhhh['photo_imagedata'],
                        'photo_streamitem_id' => $rowhhh['photo_streamitem_id'],
                        'id' => $rowhhh['photo_id']
                        );
    $images[] = $imageArray;
}
foreach ($images as  $image) {
    if($photo_num==1){
        $streamitem_imageuploaded='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:200px;height:200px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
    }else{
        $streamitem_imageuploaded[]='<a href="photo.php?pid='.$image['id'].'&streamitem_id='.$image['photo_streamitem_id'].'"><img class="stream_images" style="width:100px;height:100px;object-fit:cover;margin:2px;padding:2px;" src="data:image/jpeg;base64,'. base64_encode($image['data']) .'" /></a>';
    }
}
$json = array(
'posts' => array(),
'count' => $rowcount,
'commentlinktoggle' => $sendcommentlinktoggle,
'streamitem_formholder' => $streamitem_formholder,
'stopcommentsbutton' => $stopcommentsbutton,
'streamitem_uploadimage_count' => $streamitem_uploadimage_count,
'streamitem_imageuploaded' => $streamitem_imageuploaded,
);
print_r($json);