自作APIサーバからJSONをもらって、ログに表示しようとしています。

let json: NSDictionary = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! NSDictionary

の部分で

The data couldn’t be read because it isn’t in the correct format.

とエラーを吐かれてしまいますが、これは何が原因なのでしょうか
APIへのアクセスはsessionのrisp変数の中身から、status code=200で成功していると思います

SWIFTのコード

func someTask() {
        let url = URL(string: "My API Address")!
        let session = URLSession(configuration: URLSessionConfiguration.default)
        let task    = session.dataTask(with: url, completionHandler: {
            (data, resp, error) in

            if error != nil {
                let str = NSString(data: data!, encoding: String.Encoding.utf8.rawValue)
                print(str!)

                print(error!.localizedDescription)
                return
            }

            do {

                let json: NSDictionary = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! NSDictionary

                print(json["a"] ?? "a:none")
                print(json["b"] ?? "b:none")

            } catch let error as NSError{
                print(error.localizedDescription)
            }

        })
        task.resume()
    }

自作APIのコード

<html>
<head>
</head>
<body>

<?php

$returnValue = array("a"=>1,"b"=>2);
echo json_encode($returnValue);

?>

</body>
</html>

実際に自作APIにアクセスしたところ