JSON till PHP-array
Klistra in ett JSON-dokument och få en PHP-array-literal formaterad för en .php-källfil, kort array-syntax ([...]), korrekt indragning, strängar korrekt citerade, nästlade objekt som blir associativa arrayer och arrayer som förblir indexerade. Användbart för att bädda in API-fixturer i tester eller seeda konfigurationsfiler.
Så konverterar du JSON till PHP
-
1
Klistra in JSON:en
Valfri giltig JSON: objekt, arrayer, djupt nästlade.
-
2
Välj syntax
Kort `[...]` (PHP 5.4+) eller lång `array(...)` (behövs sällan nu).
-
3
Välj strängcitattecken
Enkelciterade (ingen interpolering, escapa apostrofer) eller dubbelciterade (tillåter `$`-interpolering: oftast inte vad du vill för data).
-
4
Kopiera arrayen
Klistra in i din `.php`-fil, tilldela till en `return`, eller linda i `config([...])`.
Exempel
Inmatning:
{ "app": { "name": "MyApp", "debug": true, "hosts": ["h1.example.com", "h2.example.com"] } }
Utdata (kort syntax, enkla citattecken):
[
'app' => [
'name' => 'MyApp',
'debug' => true,
'hosts' => [
'h1.example.com',
'h2.example.com',
],
],
]
Typmappning
| JSON | PHP |
|---|---|
| sträng | sträng (enkelciterad) |
| heltal | int |
| tal (decimal) | float |
| boolesk | true / false |
| null | null |
| array (JSON) | indexerad array |
| objekt (JSON) | associativ array |
När man ska använda associativ mot indexerad
PHP har en arraytyp med båda beteendena. JSON skiljer tydligt på objekt och array, så mappningen är:
{}-> associativ (['key' => value]).[]-> indexerad ([value, value]).
Generatorn bevarar alltid distinktionen; att blanda de två i PHP är tillåtet men förvirrande.
PHP-specifika fallgropar
- Numeriska strängnycklar. PHP castar
"42"till heltalsnyckeln42i en array. Om din JSON använder numeriska strängar som nycklar och du behöver dem som strängar, bevarar inte tur-och-retur viaarray_combinedem. - Stora heltal. JSON kan hålla heltal större än
PHP_INT_MAXpå 32-bitars-byggen. Generatorn varnar när det kan inträffa. - UTF-8. PHP-strängar är bytesekvenser; generatorn matar ut UTF-8 ordagrant. Säkerställ att din
.php-fil sparas som UTF-8 utan BOM.
Användningsfall
- Konfigurationsfiler: Laravel och Symfony använder båda PHP-array-config. Att släppa in en JSON-config i leverantörsstil fungerar bra.
- Testfixturer:
PHPUnit-fixturer är renare som arrayer än som JSON-filer laddade vid runtime. - Seeds: databas-seeders i Laravel börjar ofta som en JSON-dump och blir PHP-arrayer.
Vanliga misstag
- Att skicka PHP-arrayer tur och retur till JSON.
json_encodebehandlar en associativ array som ett objekt och en indexerad array som en array. Om du blandar dem (['key' => 'val', 0 => 'x']) får du ett objekt på vägen ut. Håll JSON-formade arrayer JSON-formade. - Dubbla citattecken med apostrofer. Enkelciterade PHP-strängar behöver escapat
\'; dubbelciterade strängar behöver escapat\\"och variabler interpolerade av misstag om du inte är försiktig. Håll dig till enkla citattecken för data. - Att glömma avslutande kommatecken. PHP tillåter dem sedan PHP 7.3 och de gör diffar renare. Generatorn lägger till dem som standard.
Vanliga frågor
Kort syntax ([...]) har funnits sedan PHP 5.4 och är det idiomatiska valet för all modern kod. Lång syntax (array(...)) behövs bara för kod som måste köras på PHP 5.3 eller äldre, i princip äldre system.
Ja. Laravel-config-filer är vanliga PHP-arrayer som returneras från en fil. Klistra in generatorns utdata efter return och spara den i config/.
Enkelciterade PHP-strängar interpolerar inte variabler eller escape-sekvenser (utom \' och \\). För dataliteraler är det snabbare och säkrare. Dubbla citattecken spelar bara roll när du vill ha \n, \t eller $variable inuti strängen.
Nej, det matar ut en array-literal. Linda den själv med return, const, eller en klassegenskap efter behov. Att hålla utdatan liten håller den kombinerbar.
Relaterade verktyg
Webpack-konfigurationsgenerator
Skapa en webpack.config.js för webpack 5 från ett kort formulär: ange entry, output-mapp och mode, och slå sedan på TypeScript, Babel, en CSS-loader, HtmlWebpackPlugin och en dev-server.
ASCII-tabellreferens
Full ASCII-tabell från 0 till 127 med decimal-, hex-, oktal- och binärvärden samt notation för numeriska HTML-referenser, inklusive NUL, LF och DEL.
Generator för platshållarbilder
Skapa en bild på 1–4000 px med egna färger och text, ladda ned PNG eller kopiera webbadress och HTML.
Slug-generator
Omvandla valfri titel eller fras till en URL-säker slug. Gemener, bindestrecksseparerad, accentfri, valfri stoppord, Unicode-medveten.
SQL till NoSQL
Gör om en enda SQL-SELECT-sats till en MongoDB-find()-fråga. Mappar kolumner, WHERE (=, >, <, >=, <=, !=), AND/OR, ORDER BY och LIMIT. Ingen JOIN, GROUP BY eller aggregering.
SVG-blobgenerator
Generera organiska, slumpmässiga SVG-blobformer med justerbar komplexitet, kontrast och seed. Kopiera SVG-pathen för bakgrunder, hero-sektioner och avatarmasker.
Verktyget finns på andra språk
- JSON do tablicy PHP [PL]
- JSONからPHP配列へ [JA]
- JSON เป็น PHP Array [TH]
- JSON sang mảng PHP [VI]
- JSON zu PHP-Array [DE]
- JSON을 PHP 배열로 변환 [KO]
- JSON para Array PHP [PT]
- JSON a Array de PHP [ES]
- تحويل JSON إلى مصفوفة PHP [AR]
- JSON ke Array PHP [ID]
- JSON naar PHP-array [NL]
- JSON vers tableau PHP [FR]
- JSON to PHP Array [EN]
- JSON in array PHP [IT]
- JSON в массив PHP [RU]
- JSON'dan PHP dizisine [TR]
- 从 JSON 到 PHP 数组 [ZH]