---
title: "Längden på string varierar mellan webbläsare"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/191204-längden-på-string-varierar-mellan-webbläsare"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "casca"
published: "2013-03-07T16:35:51.000Z"
updated: "2013-03-09T16:28:06.000Z"
replies: 4
views: 1069
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/191204-längden-på-string-varierar-mellan-webbläsare"
---

# Längden på string varierar mellan webbläsare

## #1 — casca, 2013-03-07T16:35Z

Suttit ett tag nu med följande problem. Har ett PHP-script som tar emot en string i en $\_GET-variabel, en adress, och ska passa den till Google Maps Geocoding API för att hämta koordinater.

Så långt inget konstigt! Funkar ypperligt i uppdaterad Firefox, Safari, Chrome, men när jag kommer till IE (just nu testar jag version 9) så ger Google Maps API:et ett felmeddelande som enligt mina eftersökningar oftast beror på att adressen är felformaterad:

```
{
   "results" : [],
   "status" : "INVALID_REQUEST"
}
```

Så för att försöka hitta problemet outputtar jag med var_dump() min adress (i sammanslagen sträng) och får följande resultat:

```
string(100) "http://maps.googleapis.com/maps/api/geocode/json?address=Sveavägen,+Stockholm,+Sverige&sensor=false"
```

I IE9 får jag däremot liiiite annorlunda svar:

```
string(99) "http://maps.googleapis.com/maps/api/geocode/json?address=Sveavägen,+Stockholm,+Sverige&sensor=false"
```

Hur kan det komma sig att samma sträng har olika "längd"? Filens kodning (i editorn) är inställd på UTF-8 som standard. I filens header-funktion är UTF-8 också inställt som charset:

```
<?php
	header('Content-type: application/json; charset=utf-8');
	header('HTTP/1.1 200 OK');

	// $response är en array med data, från file_get_contents() på url

	echo json_encode($response);
?>
```

Jag misstänker starkt att det har något att göra med ÅÄÖ eftersom det funkar med adresser utan dessa tecken! ;)

Permalänk: https://www.webforum.nu/p/191204

## #2 — casca, 2013-03-07T17:35Z

Jag har ingen aning om varför, men när jag refakturerade koden och körde filter_var($str, FILTER_SANITIZE_STRING) så blev plötsligt urlen godkänd och returnerade ett resultatset. Hmm.

Permalänk: https://www.webforum.nu/p/2308206

## #3 — fiddler, 2013-03-08T07:33Z

Intressant.

Permalänk: https://www.webforum.nu/p/2308207

## #4 — Gildebrand, 2013-03-08T13:32Z

En teori är att det kan finnas escape-tecken med i strängen (som \\n), vilka man måste rensa bort uttryckligen för att det ska fungera.

Eventuella felskrivningar är telefonens fel!

Permalänk: https://www.webforum.nu/p/2308210

## #5 — walter groupius, 2013-03-09T16:28Z

Geocoding apiet kan du ju lika gärna köra med php direkt? isf så slipper du eventuella differenser i webläsarna.

Permalänk: https://www.webforum.nu/p/2308218

---

Tråden på webben: https://www.webforum.nu/amne/php/191204-längden-på-string-varierar-mellan-webbläsare
