Access a particular field in an array

Going by your array you could do something like this.

This is the minimun code required to only get the medium size url

The function that handles finding all medium urls

function get_images_medium_urls (&$urls = [], $arr, $find = ['medium', 'url']) {
    foreach ($arr as $key => $value) {
        if ($key === $find[0]) $urls[] = $value[$find[1]];
        else if (is_array($value)) get_images_medium_urls($urls, $value, $find);
    }
}

Your variable is $properties_images so using the function will look like this

get_images_medium_urls($medium_images_urls, $properties_images);

Ok now after you have called the function because the first argument we passed is $medium_images_urls, it will contain all found medium url like this

Array
(
    [0] => https://doorsandshelters.com/wp-content/uploads/2021/07/1-88-300x211.jpg
)

If you would like in the future to get, for example, the urls of large images you can do this

get_images_medium_urls($medium_images_urls, $properties_images, ['large', 'url']);

Yeah, the function name could be confusing if you use it to get anything other than medium images urls, but this is simply an example, change it however you want.