Вещь, которая, вероятно, отключает вас, заключается в том, что пригодность представляет собой массив массивов, а не только массив, поэтому в примере, где вы хотите получить свойство species_name первого второго элемента верхнего уровня, вы будете использовать что-то вроде
$array[1]["suitability"][0]["species_name"];
Стоит отметить, что ваш первый массив не содержит значения «пригодности», поэтому доступ к ним невозможен. В цикле foreach вы можете использовать конструкцию, подобную этой:
foreach($array as $value){
if (isset($value["suitability"])){
echo $value["suitability"][0]["species_name"];
}
}