Arrayları echo dönüştürme
function mb_ucfirst($kelime): string
{
return mb_strtoupper(mb_substr($kelime,0, 1)) . mb_substr($kelime, 1);
}
function TDKSozluk(string $kelime, $kelimeLimit = true, int $anlamLimit = 2, int $benzerLimit = 10): array
{
$ch = curl_init("https://sozluk.gov.tr/gts?ara=$kelime");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false
]);
$sonuc = curl_exec($ch);
curl_close($ch);
$sonuc = json_decode($sonuc,true);
$return = [];
for ($i = 0; $i <= count($sonuc); $i++) { // En fazla kaç tane kelime anlamı dönsün limiti. Yani eş anlamlı kaç kelime görünsün. Verdiğim hak örneği, hâk ve ikinci sırada bulunan hak kelimesini döndürür varsayılan 2 ile
if ($kelimeLimit !== true) {if ($i == $kelimeLimit) break; }
if (isset($sonuc[$i])) {
$madde = mb_ucfirst($sonuc[$i]['madde']);
$return[$sonuc[$i]['kac']]['kelime'] = $madde;
for ($j = 0; $j < count($sonuc[$i]['anlamlarListe']); $j++) {
if ($j == $anlamLimit) break;
if (isset($sonuc[$i]['anlamlarListe'][$j])) {
$return[$sonuc[$i]['kac']]['anlamlar'][$j] = [
'anlam' => $sonuc[$i]['anlamlarListe'][$j]['anlam'],
'ozellik' => $sonuc[$i]['anlamlarListe'][$j]['ozelliklerListe'][0]['tam_adi'] ?? null // Sadece ilk sıradaki özelliğin değeri
];
}
}
$birlesikler = $sonuc[$i]['birlesikler'];
if (strlen($birlesikler)) {
$explode = explode(', ', $birlesikler);
$return[$sonuc[$i]['kac']]['birlesikler'] = array_slice($explode, 0, $benzerLimit); // Birleşik kelimelerden en fazla kaç tane geri dönsün
}
}
}
return $return;
}
$h = TDKSozluk(htmlspecialchars($_GET['q']), 2, 1, 5);
print_r($h);
if (count($h)) {
}
else {
}
Merhabalar, Abdullah hocam sayesinde kodum hazır. TDK'dan veri çekiyoruz. Bunu nasıl if ile echo yani, düzenleyip veriyi işleyebiliriz ?
Yok hocam, olmuyor. Şaka gibi. Hep echo sistemli olsa idi işimi rahatlatırdı. Sizi çok rahatsız ettim ama. Beni bağışlayın.
En son attığınız kodu denedim ve yine 500 http hatasına yönlendirdi.
Kelime,anlamlar,birleşik,özellik gibi yazılara div verebilsem benim için yeterli olacak. Yani anlam yazısına başka div çıkacak olan veri yazısına da ayrı bir div vermek istemiştim.