search
HomePHP FrameworkThinkPHPHow to get the publisher address annotation in ThinkPHP

1. Use the IP address to obtain the publisher address annotation

When obtaining the publisher address annotation, you can use its IP address for positioning. In ThinkPHP, you can obtain the IP address of the current request through the getRequest() method, and then use third-party geolocation services (such as Baidu Map API) to parse and obtain the corresponding geolocation information.

Code example:

// 获取当前请求的 IP 地址
$client_ip = request()->ip();
// 利用百度地图 API 获取地理位置信息
$url = "http://api.map.baidu.com/location/ip?ak=您的密钥&ip=$client_ip&coor=bd09ll";
$result = file_get_contents($url);
$location = json_decode($result, true);
$address = $location['content']['address'];

Among them, the $client_ip variable stores the IP address of the current request, and the $url variable stores the URL for calling the Baidu Map API Address, $result variable stores the parsing result, $location variable is the array form of the parsing result, $address variable stores the finally obtained address annotation information.

2. Use browser positioning to obtain the publisher address tag

In addition to using IP address positioning to obtain the location tag, you can also use browser positioning to obtain the location tag. In ThinkPHP, you can use JavaScript to obtain the browser location, and then use third-party geolocation services (such as Tencent Map API) to analyze and obtain the corresponding address annotation information.

Code example:

// 页面中引入 JavaScript 定位代码
navigator.geolocation.getCurrentPosition(function(position) {
    // 获取浏览器定位的经纬度
    var lat = position.coords.latitude;
    var lng = position.coords.longitude;
    // 利用腾讯地图 API 获取地理位置信息
    var url = "https://apis.map.qq.com/ws/geocoder/v1/?location=" + lat + "," + lng + "&key=您的密钥&get_poi=0";
    $.ajax({
        url: url,
        dataType: "jsonp",
        success: function(result) {
            // 解析结果,获取地址标注信息
            var address = result.result.formatted_addresses.recommend;
        }
    })
});

Among them, the navigator.geolocation.getCurrentPosition() method obtains the browser positioning, lat and lng Variables store the obtained longitude and latitude information. url Variables store the URL address for calling Tencent Map API. success The code in the parameter obtains the parsing results and obtains the final address annotation information.

The above is the detailed content of How to get the publisher address annotation in ThinkPHP. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:亿速云. If there is any infringement, please contact admin@php.cn delete

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool