ahgsql/json-repair-php
Composer 安装命令:
composer require ahgsql/json-repair-php
包简介
PHP library to repair broken/invalid JSON strings, especially from LLM outputs
README 文档
README
PHP kütüphanesi ile bozuk/geçersiz JSON stringlerini onarın, özellikle LLM (Dil Modeli) çıktılarından.
Özellikler
- Eksik tırnak işaretlerini düzeltme
- Eksik virgülleri düzeltme
- LLM çıktılarından JSON içeriğini çıkarabilme
- Tırnak içine alınmamış anahtarları düzeltme
- String olmayan değerleri (sayı, boolean, null) otomatik tanıyabilme
- İç içe objeleri ve dizileri destekleme
Kurulum
Composer ile kurulum:
composer require ahgsql/json-repair-php
Kullanım
Temel Kullanım
<?php use JsonRepair\JsonRepair; // Bozuk JSON stringini onar ve PHP dizisi olarak döndür $jsonStr = '{ name: "John", age: 30, isActive: true }'; $result = JsonRepair::loads($jsonStr); print_r($result); // Çıktı: Array ( [name] => John [age] => 30 [isActive] => 1 ) // Bozuk JSON stringini onar ve JSON string olarak döndür $jsonStr = '{ name: "John", age: 30, isActive: true }'; $result = JsonRepair::repairJson($jsonStr); echo $result; // Çıktı: {"name":"John","age":30,"isActive":true}
LLM Çıktılarından JSON Çıkarma
<?php use JsonRepair\JsonRepair; // LLM çıktısından JSON içeriğini çıkar $llmOutput = 'Anlıyorum işte size uygun bir JSON: ```json { "title": "Başlık", "items": [1, 2, 3] }```'; $result = JsonRepair::loads($llmOutput); print_r($result); // Çıktı: Array ( [title] => Başlık [items] => Array ( [0] => 1 [1] => 2 [2] => 3 ) )
Dosyadan JSON Okuma
<?php use JsonRepair\JsonRepair; // Dosyadan JSON oku ve onar $result = JsonRepair::fromFile('data.json'); print_r($result);
Seçenekler
<?php use JsonRepair\JsonRepair; // Tüm seçeneklerle kullanım $jsonStr = '{ "name": "Türkçe Karakter İçeren İsim" }'; $result = JsonRepair::repairJson($jsonStr, [ 'returnObjects' => false, // true: PHP dizisi döndürür, false: JSON string döndürür 'skipJsonParse' => false, // true: json_decode kontrolünü atlar 'logging' => false, // true: onarım loglarını da döndürür 'ensureAscii' => false // false: Unicode karakterleri korur ]); echo $result; // Çıktı: {"name":"Türkçe Karakter İçeren İsim"}
Geliştirme
Gereksinimleri Yükleme
composer install
Testleri Çalıştırma
./vendor/bin/phpunit tests
Lisans
MIT
统计信息
- 总下载量: 946
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-03-10