Как я могу решить DEGREES в PHP? - PullRequest
0 голосов
/ 26 марта 2019

Когда я запускаю запрос ниже с PHP, я получаю следующую ошибку: Неправильный счетчик параметров при вызове нативной функции 'DEGREES'

public function getNearbyActivities($lat,$lng)
    {
        $result = $this->conn->query("SELECT id,name,lat,lng, 
                ROUND(
                        111.045 * 
                        DEGREES(
                            ACOS(
                                COS(
                                    RADIANS($lat)
                                )
                                * COS(
                                    RADIANS(lat)
                                )
                                * COS(
                                    RADIANS(lng)
                                    - (
                                        RADIANS($lng)
                                    )
                                    + SIN(
                                        RADIANS($lat)
                                    )
                                    * SIN(
                                        RADIANS(lat)
                                    )
                                )
                            ),2)
                AS distance_in_km FROM activities
            ORDER BY distance_in_km ASC") 
            or die($this->conn->error);
        $stores = array();
        while ($activities = $result->fetch_assoc())
            $stores[] = $activities;
        return $stores;
    }

1 Ответ

1 голос
/ 26 марта 2019

Вам не хватает ) см. Ниже

    $result = $this->conn->query("SELECT id,name,lat,lng, 
            ROUND(
                    111.045 * 
                    DEGREES(
                        ACOS(
                            COS(
                                RADIANS($lat)
                                )

                                * COS(
                                    RADIANS(lat)
                                )
                                * COS(
                                    RADIANS(lng) - (RADIANS($lng)
                                )
                                + SIN(
                                    RADIANS($lat)
                                )
                                * SIN(
                                    RADIANS(lat)
                                )
                            )
                        )
                    )       // <- missing brace
                ,2)
            AS distance_in_km FROM activities
        ORDER BY distance_in_km ASC") 
...