Temel olarak, eğer iki dizge benim veritabanımda aynı şekilde değerlendirirse, uygulama seviyesinde bunu da kontrol edebilmeyi isterdim. Örneğin, bir kişi bir arama alanına "bjork" girerse, PHP'nin MySQL'in yaptığı gibi "Björk" dizesine uymasını istiyorum.MySQLs öykünmesi PHP dizisi karşılaştırmalarında utf8_general_ci harmanlama
PHP'nin MySQL'in harmanlama seçeneklerine doğrudan bir eşdeğeri olmadığını ve bunu yapmanın en kolay yolu, dizeleri dönüştüren basit bir işlev yazmak, strtolower() kullanarak bunları küçük boyutlu küçük harf ve strstr yapmaktır.() çok baytlı karakterleri karşılık gelen ASCII eşdeğerleriyle değiştirmek.
Bu doğru bir varsayım mı? Herhangi bir kimse, çeşitli MySQL harmanlamaları yapacağı için (özellikle mevcut ihtiyaçlarım için, utf8_general_ci) strstr() işlevinin ikinci parametresi olarak kullanışlı bir fool prova dizisine sahip mi? Ya da, eksiktir, MySQL'deki farklı derlemelerin çeşitli karakterleri nasıl ele aldığına dair belgeleri nerede bulabilirim? (Bazı harmanlarda ß'nin S ve diğerlerinde Ss gibi davrandığını gördüm, ama her karakter değerlendirmesini özetlemedi.)
bir MySQL sorgusu çalıştırmak ve harmanlama böylece MySQL sunucusundaki karşılaştırma çalıştırmak için, kendisine geçirilen dizeleri için kullanmak mysql söylemek mümkündür. çok hızlı olmayabilir ama tam olarak davranış yaratabilir. – hakre
Bu verimliliğin çok önemli olduğunu eklemeliyim. – Thor