metaphone

(PHP 4, PHP 5, PHP 7, PHP 8)

metaphoneBir dizgenin metafon anahtarını hesaplar

Açıklama

metaphone(string$dizge, int$azami_ses_karakteri_sayısı = 0): string

dizge dizgesinin metafon anahtarını hesaplar.

Benzer sesletime sahip sözcükler için aynı anahtarı üretmesi bakımından soundex() işlevine benzer. Ancak İngilizce okunuşun temel kuralları kullanıldığından soundex() işlevine göre daha doğru anahtarlar üretir. Ayrıca bu işlevin ürettiği anahtarlar değişken uzunluktadır.

Metafon Lawrence Philips <lphilips at verity dot com> tarafından geliştirilmiş ve şu kitapta açıklanmıştır: ["Practical Algorithms for Programmers", Binstock & Rex, Addison Wesley, 1995]

Bağımsız Değişkenler

dizge

Girdi dizgesi.

azami_ses_karakteri_sayısı

Bu bağımsız değişken, döndürülen metafon anahtarını uzunluk olarak azami_ses_karakteri_sayısı karakterle sınırlar. Bununla birlikte, ortaya çıkan ses karakterleri her zaman tamamen kopyalanır, bu nedenle ortaya çıkan dizi uzunluğu azami_ses_karakteri_sayısından biraz daha uzun olabilir. Öntanımlı değer olan 0, kısıtlama olmadığı anlamına gelir.

Dönen Değerler

Metafonu bir dizge olarak döndürür, başarısızlık durumunda false döner.

Sürüm Bilgisi

Sürüm: Açıklama
8.0.0 Başarısızlık durumunda işlev artık false döndürüyor.

Örnekler

Örnek 1 - metaphone() örneği

<?php
var_dump
(metaphone('programming'));
var_dump(metaphone('programmer'));
?>

Yukarıdaki örneğin çıktısı:

string(7) "PRKRMNK" string(6) "PRKRMR"

Örnek 2 - azami_ses_karakteri_sayısı kullanımı

<?php
var_dump
(metaphone('programming', 5));
var_dump(metaphone('programmer', 5));
?>

Yukarıdaki örneğin çıktısı:

string(5) "PRKRM" string(5) "PRKRM"

Örnek 3 - azami_ses_karakteri_sayısı kullanımı örneği

Bu örnekte, metaphone()'a beş karakterlik bir dizge üretmesi öneriliyor, ancak bu, son ses karakterinin içerilmemesi demektir, çünkü 'x', 'KS' olarak yazılmalıdır, bu nedenle işlev, altı karakterli bir dizge döndürür.

<?php
var_dump
(metaphone('Asterix', 5));
?>

Yukarıdaki örneğin çıktısı:

string(6) "ASTRKS"
To Top