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.