|
دالة جاهزة لتنظيف عبارة معينة
السلام عليكم و أسعد الله يومكم بكل خير
أحتاج دالة جاهزة و تكون صغيرة و سريعة لتنظيف جملة انجليزية و تحتفظ فقط ب abcdefghijklmnopqrstuvwxyz- يعني مثلا إذا تم إدخال نص مثل هذا élément d'anger يتم تحويله الى element-danger الفراغ يتم إضافة فيه - و الحروف الخاصة يتم تحويلها الى حروف عادية é أو è الى e à الى a ç الى c و هكذا أتمنى أن تكون هناك دالة أو تعبير قياسي يفي بالغرض و يختصر الأمر, لأن استعمال الدالة str_replace سيجعل الأمر طويل
2 إجابات
salam alikom
try this Function enleveaccents($chaine)
{
$string= strtr($chaine,
" ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ",
"-aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn");
return $string;
} ;
or this
$str = strtr($str, ' ÁÀÂÄÃÅÇÉÈÊËÍÏÎÌÑÓÒÔÖÕÚÙÛÜÝ', '-AAAAAACEEEEEIIIINOOOOOUUUUY');
$str = strtr($str, ' áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', '-aaaaaaceeeeiiiinooooouuuuyy');
Or this
function wd_remove_accents($str, $charset='utf-8')
{
$str = htmlentities($str, ENT_NOQUOTES, $charset);
$str = preg_replace('#&([A-za-z])(?:acute|cedil|circ|grave|orn|ring|slash|th|tilde|uml);#', '\1', $str);
$str = preg_replace('#&([A-za-z]{2})(?:lig);#', '\1', $str); // pour les ligatures e.g. 'œ'
$str = preg_replace('#&[^;]+;#', '', $str); // supprime les autres caractères
return $str;
}
بواسطة: chlieh 0 من 0 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا
يمكنك تنظيف النص من اى شىء سوى النص الانجليزى
$string = "some სოფო text";
$string = preg_replace('/[^a-z0-9_ ]/i', '', $string); اما التحويل ستحتاج عملها يدويا عن طريق التبديل بين مصفوفة البحث ومصفوفة التبديل
بواسطة: MacOS 1 من 1 أشخاص وجدو هذه الاجابة مفيدة. هل وجدتها؟ نعم لا لكن هذه تحذفه أنا أريد فقط استبداله مافى دالة جاهزة لذلك .. عليك صنعها يدويا باستعمال str_replace |

