Laravel 5 在Laravel中将纬度和经度转换为字符串后保存

Laravel 5 在Laravel中将纬度和经度转换为字符串后保存,laravel-5,geolocation,Laravel 5,Geolocation,如何将lat和long正确转换为字符串并保存到db mysql?非常感谢您的帮助 <?php namespace App\Http\Controllers; public function addLocation(Request $request){ $address = NGO::all(); $address->lat = $request['lat']; $address->lng =

如何将lat和long正确转换为字符串并保存到db mysql?非常感谢您的帮助

<?php namespace App\Http\Controllers;
        public function addLocation(Request $request){
            $address = NGO::all();
            $address->lat = $request['lat'];
            $address->lng = $request['lng'];
            $lat = $address->lat;
            $lng = $address->lng;
            $address = getaddress($lat,$lng);
            $address->save();

            return view('pages.Ngo.Add-New-Ngo-Scholar');
    }

    public function getaddress($lat,$lng)
    {
    $url = 'http://maps.googleapis.com/maps/api/geocode/json?latlng='.trim($lat).','.trim($lng).'&sensor=false';
    $json = @file_get_contents($url);
    $data=json_decode($json);
    $status = $data->status;
    if($status=="OK")
    return $data->results[0]->formatted_address;
    else
    return false;
    }

您可以告诉Laravel始终将特定属性强制转换为字符串(或数组等)。您甚至可以强制转换为JSON(在db中,它将被JSON_编码并保存为字符串)

对于模型中的此用途:

protected $casts = [
        'attribute_name' => 'string'
    ];

好的,我先试试。先生,好的,如何在我的模型中组合lat和long。比如“lat”=>“string”和“long”=>“string”。它应该保存在表中的一列中?是否将它们都保存在一列中?这取决于你&完全取决于你的目的。您的问题是如何将数据库中的某些内容保存为字符串…:-)但如果您想将其分为两列并转换为字符串:protected$casts=['lat'=>'string','long'=>'string',];主席先生,为了进一步解释,我真正想在一列中说明的是,在保存lat和long之前,应该将其转换为string,使其看起来像string.Ex中的真实地址。lat-23.456566,long-10.4335500(这应该是另存为(795 E DRAGRAM TUCSON AZ 85705 USA)嗨,很抱歉,因为我不能帮你。Stackoverflow不是一个人们帮助你编程的网站。它是一个你可以找到具体问题答案的网站(比如:如何在Laravel中保存字符串?)…我无法帮助您编写应用程序。请尝试在internet上搜索示例代码(搜索:示例代码google maps api)。