


Comment résoudre le problème complexe du traitement des géodonnées PHP? Utilisez le compositeur et Geophp!
Apr 17, 2025 pm 08:30 PMLe compositeur peut être appris par l'adresse suivante: Adresse d'apprentissage
Lors du développement d'un système d'information géographique (SIG), j'ai rencontré un problème difficile: comment gérer efficacement divers formats de données géographiques dans PHP, tels que WKT (texte bien connu), WKB (binaire bien connu), Geojson, etc. La complexité de la conversion et du fonctionnement entre ces formats m'a causé un mal de tête. J'ai essayé plusieurs méthodes, mais aucun d'eux ne peut être résolu efficacement. Enfin, j'ai trouvé la bibliothèque GEOPHP, qui a été facilement intégrée via Composer, et elle a complètement résolu mes problèmes.
GEOPHP est une bibliothèque PHP open source con?ue pour gérer les opérations géométriques. Il est entièrement écrit en PHP et peut donc fonctionner sur un hébergement partagé. Cette bibliothèque peut lire et écrire dans une variété de formats, notamment WKT (y compris EWKT), WKB (y compris EWKB), Geojson, KML, GPX et Georss. Il prend en charge toute la géométrie des caractéristiques simples (point, linestring, polygone, GeometryCollection, etc.) et peut être utilisée pour obtenir des points centraux, des bo?tes de délimitation, des zones et d'autres informations utiles.
L'installation de GeoPhp à l'aide du compositeur est très simple, il suffit d'exécuter la commande suivante:
<code>composer require itamair/geophp</code>
GEOPHP s'intègre également de manière transparente aux extensions GEOS PHP, et GEOPHP obtient automatiquement des améliorations de performances lorsque GEOS est installé sur le serveur et est entièrement conforme aux normes d'implémentation des informations géographiques OpenGIS?. Cela signifie que votre application peut utiliser un ensemble utile d'opérations de géométrie "de base" dans tous les environnements, tout en utilisant un ensemble d'opérations "étendues" dans un environnement avec GEOS installé.
Regardons un exemple simple montrant comment utiliser Geophp:
<code class="php"><?php include_once('geoPHP.inc'); // Polygon WKT 示例 $polygon = geoPHP::load('POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2))','wkt'); $area = $polygon-> getArea(); $centroid = $polygon->getCentroid(); $centX = $centroid->getX(); $centY = $centroid->getY(); print "這個多邊形的面積是".$area.",中心點坐標為X=".$centX." 和Y=".$centY; // MultiPoint JSON 示例print "<br> "; $json = '{ "type": "MultiPoint", "coordinates": [ [100.0, 0.0], [101.0, 1.0] ] }'; $multipoint = geoPHP::load($json, 'json'); $multipoint_points = $multipoint->getComponents(); $first_wkt = $multipoint_points[0]->out('wkt'); print "這個多點幾何包含".$multipoint->numGeometries()." 個點。第一個點的WKT表示為".$first_wkt;</code>
GEOPHP gère non seulement les opérations géométriques de base, mais elle intègre également de manière transparente avec les PostGIS pour lire et écrire facilement les données géométriques PostGIS. Par exemple:
<code class="php"><?php include_once('geoPHP.inc'); $host = 'localhost'; $database = 'phayes'; $table = 'test'; $column = 'geom'; $user = 'phayes'; $pass = 'supersecret'; $connection = pg_connect("host=$host dbname=$database user=$user password=$pass"); // 使用PostGIS的asBinary和GeomFromWKB $result = pg_fetch_all(pg_query($connection, "SELECT asBinary($column) as geom FROM $table")); foreach ($result as $item) { $wkb = pg_unescape_bytea($item['geom']); // 確保解碼十六進制數(shù)據(jù)塊 $geom = geoPHP::load($wkb, 'ewkb'); // 現(xiàn)在我們有一個完整的geoPHP幾何對象 // 將其插入回數(shù)據(jù)庫 $insert_string = pg_escape_bytea($geom-> out('ewkb')); pg_query($connection, "INSERT INTO $table ($column) values (GeomFromWKB('$insert_string'))"); }</code>
En utilisant GEOPHP, j'ai non seulement résolu les problèmes complexes du traitement des données géographiques, mais aussi considérablement amélioré l'efficacité du fonctionnement et la maintenabilité du programme. J'ai été impressionné par la flexibilité et la facilité d'utilisation de cette bibliothèque, et que vous ayez affaire à de simples opérations géométriques ou à la conversion des données SIG complexes, GEOPHP sera un outil très utile.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Ethereum est une plate-forme d'application décentralisée basée sur des contrats intelligents, et son ETH de token natif peut être obtenu de diverses manières. 1. Enregistrez un compte via des plateformes centralisées telles que Binance et OUYIOK, complétez la certification KYC et achetez ETH avec des stablecoins; 2. Connectez-vous au stockage numérique via des plates-formes décentralisées et échangez directement ETH avec des stablescoins ou d'autres jetons; 3. Participer à un engagement de réseau et vous pouvez choisir un engagement indépendant (nécessite 32 ETH), des services de gage liquide ou un engagement en un clic sur la plate-forme centralisée pour obtenir des récompenses; 4. Gagnez ETH en fournissant des services aux projets Web3, en effectuant des taches ou en obtenant des Airdrops. Il est recommandé que les débutants partent des plates-formes centralisées traditionnelles, passent progressivement vers des méthodes décentralisées et attachent toujours de l'importance à la sécurité des actifs et à la recherche indépendante, à

L'utilisation réelle de Battle Royale dans le système de double monnaie ne s'est pas encore produite. Conclusion En ao?t 2023, l'étincelle du protocole de prêt écologique Makerdao a donné un rendement annualisé de Dai8% $. Ensuite, Sun Chi est entré en lots, investissant un total de 230 000 $ Steth, représentant plus de 15% des dép?ts de Spark, for?ant Makerdao à faire une proposition d'urgence pour réduire le taux d'intérêt à 5%. L'intention initiale de Makerdao était de "subventionner" le taux d'utilisation de $ dai, devenant presque le rendement en solo de Justin Sun. Juillet 2025, Ethe

Qu'est-ce que Treehouse (Tree)? Comment fonctionne Treehouse (Tree)? Treehouse Products Tethdor - Taux de citation décentralisé Gonuts Points Système Treehouse met en évidence les jetons d'arbre et l'économie des jetons Présentation du troisième trimestre de l'équipe de développement de la feuille de route 2025, des investisseurs et des partenaires Treehouse Team Investment Fund Résumé Partenaire, car DeFi continue d'étendre les marques financières, la demande de produits à revenu fixe est en croissance, et son r?le est similaire au r?le des liaisons dans les marques financières traditionnelles. Cependant, construire sur la blockchain

Table des matières Crypto Market Panoramic Nugget Popular Token Vinevine (114,79%, valeur marchande circulaire de 144 millions de dollars) Zorazora (16,46%, valeur marchande circulaire de 290 millions de dollars américains) NAVXNAVIPROTOCOL (10,36%, valeur marchande circulaire de la cha?ne éthereum de 25,7624 millions de dollars) et alpha interprètes le NFT sur les ventes de NFT sur la cha?ne éthereum dans la cha?ne de séquences de séquences) et l'alpha interprète la NFT sur la cha?ne éthereum dans la cha?ne de séquences de séquences) et les alpha et les interventions NFT sur la pénu Les cryptopunks classés en premier dans le réseau de prover décentralisé succinct ont lancé la fondation succincte, qui peut être le token tge

Une bataille verbale sur la valeur des "jetons de créateur" a balayé le cercle social cryptographique. Les deux principales cha?nes publiques de Base et Solana ont eu une rare confrontation frontale, et un débat féroce autour de Zora et Pump. D'où vient cette confrontation remplie de poudre à canon? Découvons. La controverse a éclaté: le fusible de l'attaque de Sterling Crispin contre Zora était le chercheur de Delcomplex, Sterling Crispin, a bombardé publiquement Zora sur les plateformes sociales. Zora est un protocole social sur la cha?ne de base, en se concentrant sur la page d'accueil et le contenu de l'utilisateur

Répertoire Qu'est-ce que le zircuit comment faire fonctionner les caractéristiques principales zircuites de la sécurité de la sécurité de la sécurité zircuit de sécurité AI Sécurité native Ponts zircuits Points zircuits Staking Qu'est-ce que la prédiction de prix Zircuit Token (ZRC) Zircuit (ZRC) Prédiction de prix Comment acheter ZRC COIN? Conclusion Ces dernières années, le marché de niche de la plate-forme Blockchain Layer2 qui fournit des services au réseau Ethereum (ETH) Layer1 a prospéré, principalement en raison de la congestion du réseau, des frais de manipulation élevée et une mauvaise évolutivité. Beaucoup de ces plateformes utilisent une technologie à volume, plusieurs lots de transaction traités hors cha?ne

L'échec à enregistrer un compte Binance est principalement causé par le blocage régional IP, les anomalies du réseau, la défaillance de l'authentification KYC, la duplication du compte, les problèmes de compatibilité des appareils et la maintenance du système. 1. Utilisez des n?uds régionaux sans restriction pour assurer la stabilité du réseau; 2. Soumettre les informations claires et complètes des certificats et assortir la nationalité; 3. Inscrivez-vous avec l'adresse e-mail non liée; 4. Nettoyez le cache du navigateur ou remplacez l'appareil; 5. évitez les périodes de maintenance et faites attention à l'annonce officielle; 6. Après l'inscription, vous pouvez immédiatement activer le 2FA, aborder la liste blanche et le code anti-phishing, qui peuvent effectuer l'enregistrement dans les 10 minutes et améliorer la sécurité de plus de 90%, et enfin construire une boucle fermée de conformité et de sécurité.

Pour éviter de prendre le relais à des prix élevés de la spéculation sur les devises, il est nécessaire d'établir un système de défense de trois en un de sensibilisation au marché, d'identification des risques et de stratégie de défense: 1. Identifiez des signaux tels que la poussée des médias sociaux à la fin du marché haussier, plongez après la poussée de la nouvelle monnaie et la réduction des baleines géantes. Au début du marché des ours, utilisez les règles de la pyramide de position et la perte d'arrêt dynamique; 2. Construisez un triple filtre pour le classement de l'information (stratégie / tactique / bruit), vérification technique (moyennes mobiles et rsi, données profondes), isolement émotionnel (trois pertes et arrêts consécutifs et tirant le cable du réseau); 3. Créez une défense à trois couches des règles (suivi des baleines Big Whale, des positions sensibles aux politiques), une couche d'outils (surveillance des données sur cha?ne, outils de couverture) et une couche système (stratégie de barbell, réserves USDT); 4. Méfiez-vous des effets de célébrités (tels que les pièces de monnaie), des changements de politique, de la crise de liquidité et d'autres scénarios, et adoptez la vérification du contrat et la vérification de la position et
