I am trying to interpolate a string from an external file but I am having issues using complex curly braces. The variables do not populate as expected? If i take the code from the external template file it successfully returns a value for each variable.

index.php

```
function getIncludeContents($included_file_path, $post){

    if ( !file_exists( __DIR__ . $file ) ) {
        return 'nofile';
    }

    if ( is_array( $post ) ){
        extract( $post );
    }

    ob_start(); 
    include($included_file_path);
    return ob_get_clean();
}

$navigation = getIncludeContents('layouts/test.php', $post);
var_dump($navigation);

```

test.php

```
<div id="post-{$post['id']}"></div>

```

this returns...
`'<div id="post-${post['id']}"></div>'`

when it should return...
`'<div id="post-201"></div>`

any ideas why? thanks