Skip to content

Error in save or retrieve  #182

Open
Livijn/laravel-mysql-spatial
#1
@apeivandi

Description

@apeivandi

Hi
My code was working fine and all of the sudden I'm getting a real strange error. (really all of the sudden! I didn't change a line of code! Only my mac got updated to latest version which I honestly don't see how that could be an issue!)

When I try to save or retrieve any entity that has a point data type in it I get this exception:
PHP Fatal error: During inheritance of JsonSerializable: Uncaught ErrorException: Return type of Grimzy\LaravelMysqlSpatial\Types\Point::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /Users/amirpeivandi/Projects/nwrewards/vendor/grimzy/laravel-mysql-spatial/src/Types/Point.php:93

Any idea what this could be?

Amir

Activity

bossrabbit

bossrabbit commented on Feb 5, 2022

@bossrabbit

I'm experiencing the same problem with PHP 8.1.2 and Laravel 8.65 and version 5.0.0 of this package.

If you are running PHP 8.1 and higher you can suppress this error by adding the attribute #[\ReturnTypeWillChange] before the jsonSerialize() method in .../vendor/grimzy/laravel-mysql-spatial/src/Types/Point.php. More about this new attribute here.

    /**
     * Convert to GeoJson Point that is jsonable to GeoJSON.
     *
     * @return \GeoJson\Geometry\Point
     */
    #[\ReturnTypeWillChange]
    public function jsonSerialize()
    {
        return new GeoJsonPoint([$this->getLng(), $this->getLat()]);
    }
added a commit that references this issue on Nov 8, 2022
7eba42a
linked a pull request that will close this issue on Nov 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Participants

      @bossrabbit@apeivandi

      Issue actions

        Error in save or retrieve · Issue #182 · grimzy/laravel-mysql-spatial