以下のような関数を作成して返り値を確認したところ、[]が返ってきました。
しかし関数を実行すると、関数内のprintの部分ではちゃんと結果が表示されます。

クロージャを用いれば解決するのは調べたところわかるのですが、具体的にこのコードをどう変更すれば良いのかがわかりません。

どなたかわかる方はいらっしゃるでしょうか?

import SwiftyJSON
import Alamofire

public func post_request(postString:String, url:String) -> Array<JSON> {
    var data:Array<JSON> = []

    var request = URLRequest(url: URL(string: url)!)
    request.httpMethod = "POST"
    request.httpBody = postString.data(using: .utf8)

    Alamofire.request(request as URLRequestConvertible)
        .responseJSON { response in

            print(response.request as Any)  // original URL request
            print(response.response as Any) // HTTP URL response
            print(response.data as Any)     // server data
            print(response.result.value as Any)   // result of response serialization

            let json = try! JSON(data: response.data!)
            data = json.arrayValue
            print("*************")
            print(data)
            print("*************")
    }

    return data
}