Php ആദ്യ അക്ഷരം ചെറുതാക്കുക. ആദ്യ അക്ഷരം വലിയക്ഷരമാക്കുക (PHP)

വളരെ അപൂർവ്വമായി, പക്ഷേ ഇപ്പോഴും ആവശ്യം ഉയർന്നുവരുന്നു, php സിറിലിക്കിലെ ആദ്യ അക്ഷരം എങ്ങനെ വലിയക്ഷരമാക്കാം.

ഒരു വാക്കിൻ്റെ ആദ്യാക്ഷരം വലിയക്ഷരമാകുമ്പോഴാണ് ഇത്. ഉദാഹരണത്തിന്, ഒരു ഉപയോക്തൃനാമത്തിൻ്റെ അക്ഷരവിന്യാസം ഏകീകരിക്കുന്നതിന് അല്ലെങ്കിൽ, ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് ഒരു വാചകത്തിലേക്ക് സ്വയമേവ വാചകം രചിക്കേണ്ടിവരുമ്പോൾ ഇത് ഉപയോഗിക്കാം.

php ലാറ്റിൻ എന്ന ആദ്യ അക്ഷരം എങ്ങനെ വലിയക്ഷരമാക്കാം

ഇവിടെ എല്ലാം വളരെ ലളിതമാണ്: PHP ന് 2 ഫംഗ്ഷനുകളുണ്ട്: ucfirst(), ucwords(). ആദ്യത്തേത് ഒരു വരിയിലെ ആദ്യ അക്ഷരം മാത്രം വലിയക്ഷരമാക്കുന്നു, രണ്ടാമത്തേത് ഒരു വരിയിലെ ഓരോ വാക്കിൻ്റെയും ആദ്യ അക്ഷരത്തെ വലിയക്ഷരമാക്കുന്നു.

// സ്ട്രിംഗ് $str = "ആദ്യ അക്ഷരങ്ങൾ"; // ആദ്യ അക്ഷരം വലിയക്ഷരം echo ucfirst($str) ആക്കുക. "


ആദ്യ അക്ഷരങ്ങൾ
ഒപ്പം
ആദ്യ അക്ഷരങ്ങൾ

ഞങ്ങൾ വ്യത്യാസം കാണുന്നു. ലാറ്റിനിൽ എഴുതിയ ഇംഗ്ലീഷ് ഗ്രന്ഥങ്ങളിൽ (അല്ലെങ്കിൽ മറ്റേതെങ്കിലും) പ്രശ്നങ്ങളൊന്നും ഉണ്ടാകില്ല.

php സിറിലിക് വിൻഡോസ്-1251 (CP-1251) എന്ന ആദ്യ അക്ഷരം എങ്ങനെ വലിയക്ഷരമാക്കാം

Windows-1251 എൻകോഡിംഗിൽ എഴുതിയ സിറിലിക് (റഷ്യൻ അക്ഷരങ്ങൾ) വലിയ പ്രശ്നങ്ങളൊന്നും ഉണ്ടാകില്ല:

// സ്ട്രിംഗ് $str = "ആദ്യ അക്ഷരങ്ങൾ"; // ആദ്യ അക്ഷരം വലിയക്ഷരം echo ucfirst($str) ആക്കുക. "
"; // എല്ലാ വാക്കുകളുടെയും ആദ്യ അക്ഷരം echo ucwords($str);

തൽഫലമായി, ഞങ്ങൾക്ക് രണ്ട് വരികൾ ലഭിക്കും:
ആദ്യ അക്ഷരങ്ങൾ
ഒപ്പം
ആദ്യ അക്ഷരങ്ങൾ

php സിറിലിക് UTF-8 എന്ന ആദ്യ അക്ഷരം എങ്ങനെ വലിയക്ഷരമാക്കാം

എന്നാൽ UTF-8 ലേക്ക് വന്നയുടൻ, പ്രശ്നങ്ങൾ ആരംഭിക്കുന്നു, കാരണം UTF-8 ലെ സിറിലിക് അക്ഷരമാല 2 ബൈറ്റുകൾ എടുക്കുന്നു, അതിനാൽ ഒന്നും പ്രവർത്തിക്കില്ല. ഇത് ചെയ്യുന്നതിന്, ഞങ്ങൾ മൾട്ടിബൈറ്റ് സ്ട്രിംഗ് ഫംഗ്ഷനുകളിൽ നിന്ന് "ക്രച്ച്" ഉപയോഗിക്കും. ഈ പ്ലഗിൻ PHP-ൽ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് സമാനമായ 2 പ്രവർത്തനങ്ങൾ ഉപയോഗിക്കാം: mb_ucfirst, mb_convert_case.

അവ അവിടെ ഇല്ലെങ്കിൽ, നിങ്ങളുടെ സ്വന്തം ഇതരമാർഗങ്ങൾക്കൊപ്പം നിങ്ങൾ കോഡ് അനുബന്ധമായി നൽകേണ്ടതുണ്ട്:

എങ്കിൽ (!function_exists("mb_ucfirst") && extension_loaded("mbstring")) ( /** * mb_ucfirst - ആദ്യത്തെ പ്രതീകത്തെ വലിയക്ഷരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നു * @പരം സ്ട്രിംഗ് $str - സ്ട്രിംഗ് * @പരം സ്ട്രിംഗ് $എൻകോഡിംഗ് - ഡിഫോൾട്ട് എൻകോഡിംഗ് UTF-8 * @return string */ function mb_ucfirst($str, $encoding="UTF-8") ($str = mb_ereg_replace("^[\ ]+", "", $str); $str = mb_strtoupper(mb_substr($ str, 0, 1, $encoding), mb_substr ($str, 1, mb_strlen($str), $str = "ആദ്യ അക്ഷരങ്ങൾ"; // ucfirst echo ucfirst($str) ഫംഗ്‌ഷൻ ഉപയോഗിച്ച് സിറിലിക് അക്ഷരമാല യൂണിക്കോഡാക്കി മാറ്റാൻ ശ്രമിക്കുക. "
"; // ucwords echo ucwords($str) ഫംഗ്‌ഷൻ ഉപയോഗിച്ച് സിറിലിക് അക്ഷരമാല യൂണിക്കോഡിലേക്ക് പരിവർത്തനം ചെയ്യാൻ ശ്രമിക്കുക.
"; // പ്രഖ്യാപിത ഫംഗ്‌ഷൻ mb_ucfirst() echo mb_ucfirst($str) ഉപയോഗിച്ച് പ്രോസസ്സ് ചെയ്‌തു. "
"; // mb_convert_case ഫംഗ്‌ഷൻ echo mb_convert_case($str, MB_CASE_TITLE, "UTF-8") ഉപയോഗിച്ച് പരിവർത്തനം ചെയ്യുക;

ഈ കോഡിൻ്റെ ഫലം ഇനിപ്പറയുന്ന വരികളായിരിക്കും.

ആദ്യ അക്ഷരം വലിയക്ഷരമാക്കുന്നത് വെബ് ഡെവലപ്പർമാർക്ക് വളരെ സാധാരണമായ ഒരു ജോലിയാണ്. ഇത് വിവിധ സന്ദർഭങ്ങളിൽ ആവശ്യമായി വന്നേക്കാം, എന്നാൽ ഞങ്ങൾ അവയിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കില്ല, ഏതെങ്കിലും പദത്തിൽ ഏതെങ്കിലും എൻകോഡിംഗിനൊപ്പം ആദ്യ അക്ഷരം ഉയർത്തുക എന്നതാണ്.

ഞാൻ എൻകോഡിംഗിനെക്കുറിച്ച് പരാമർശിച്ചത് വെറുതെയല്ല, കാരണം PHP-ക്ക് ഇതിനായി ഒരു ബിൽറ്റ്-ഇൻ ഫംഗ്ഷൻ ഉണ്ട്, ഇത് ucfirst() ആണ്. പക്ഷെ അത് നമുക്ക് അനുയോജ്യമല്ല, കാരണം ... ലാറ്റിൻ അക്ഷരങ്ങളിൽ മാത്രം പ്രവർത്തിക്കുന്നു. ആ. "വീട്" എന്ന വാക്കിലെ ആദ്യ അക്ഷരം ഉയർത്താൻ നിങ്ങൾ ഈ ഫംഗ്ഷൻ ഉപയോഗിക്കുകയാണെങ്കിൽ, എല്ലാം ശരിയാകും കൂടാതെ നിങ്ങൾക്ക് "ഹോം" ഒരു ഔട്ട്പുട്ടായി ലഭിക്കും. "വീട്" എന്ന വാക്കിലും നിങ്ങൾ ഇത് ചെയ്യുകയാണെങ്കിൽ, ഔട്ട്പുട്ട് ഒരു ചെറിയ അക്ഷരത്തിൽ "വീട്" പോലെ തന്നെ തുടരും. UTF-8 എൻകോഡിംഗിൽ ഞങ്ങൾ റഷ്യൻ പ്രതീകങ്ങൾ ഉപയോഗിക്കുന്നതിനാലാണ് ഇത് സംഭവിക്കുന്നത്, അതായത്. മൾട്ടി-ബൈറ്റ്, കൂടാതെ ucfirst() സിംഗിൾ-ബൈറ്റ് എൻകോഡിംഗുകൾക്കായി ഉപയോഗിക്കുന്നു.

മൾട്ടിബൈറ്റ് എൻകോഡിംഗുകളിൽ സ്ട്രിംഗുകൾക്കൊപ്പം പ്രവർത്തിക്കാൻ PHP ന് ഫംഗ്ഷനുകളുണ്ട്, കൂടാതെ മൾട്ടിബൈറ്റ് എൻകോഡിംഗിലെ ആദ്യ അക്ഷരം വലിയക്ഷരമാക്കാൻ ചുവടെ അവതരിപ്പിച്ചിരിക്കുന്ന ഫംഗ്ഷനിൽ ഞങ്ങൾ അവ ഉപയോഗിക്കുന്നു.

ആദ്യ അക്ഷരം /** * വലിയ അക്ഷരം വലിയക്ഷരമാക്കുന്ന ഒരു ഫംഗ്‌ഷൻ. മൾട്ടി-ബൈറ്റ് എൻകോഡിംഗുകൾക്കൊപ്പം പ്രവർത്തിക്കുന്നു.

* * @param $str * @param string $encoding * @return string */ function upFirstLetter($str, $encoding = "UTF-8") ( return mb_strtoupper(mb_substr($str, 0, 1, $encoding), $എൻകോഡിംഗ്) mb_substr($str, 1, null, $encoding) echo upFirstLetter("home"); // "ഹോം" എന്ന് പ്രിൻ്റ് ചെയ്യും

പിഎച്ച്‌പിയിൽ ucfirst() എന്ന ഫംഗ്‌ഷൻ ഉണ്ട്, അത് ഒരു വരിയിലെ ആദ്യ അക്ഷരത്തെ വലിയക്ഷരമാക്കുന്നു, ucwords() - വരിയിലെ എല്ലാ വാക്കുകളിലും അക്ഷരങ്ങൾ വലിയക്ഷരമാക്കുന്നു, സിറിലിക്, യൂണികോഡ് എന്നിവയിൽ പ്രവർത്തിക്കുമ്പോൾ പ്രശ്നങ്ങൾ ഉണ്ടാകുന്നു.

PHP യുടെ എല്ലാ പതിപ്പുകളിലും സിറിലിക്കും യൂണിക്കോഡും ഒരു ശാശ്വത പ്രശ്നമാണ്, പ്രശ്നം ഭാഗികമായി പരിഹരിച്ചു, ഒരു ഫംഗ്ഷൻ string mb_convert_case (string str, int മോഡ് [, സ്ട്രിംഗ് എൻകോഡിംഗ്]) ഉണ്ട്, അത് പാരാമീറ്ററുകളായി ഒരു സ്ട്രിംഗ്, ഒരു കൺവേർഷൻ മോഡ് ( 0 - വലിയക്ഷരത്തിലേക്കുള്ള എല്ലാ അക്ഷരങ്ങളും, 1 - ചെറിയക്ഷരത്തിലുള്ള എല്ലാ അക്ഷരങ്ങളും, 2 - വലിയക്ഷരത്തിലുള്ള എല്ലാ വാക്കുകളുടെയും ആദ്യ അക്ഷരങ്ങളും) എൻകോഡിംഗും.

അക്ഷരങ്ങൾ പരിവർത്തനം ചെയ്യുന്നു

ടാസ്ക്: ആദ്യ അക്ഷരം ഒരു സ്ട്രിംഗിലേക്കും എല്ലാ വാക്കുകളിലെയും ആദ്യ അക്ഷരങ്ങളും ഒരു സ്ട്രിംഗിലേക്കും പരിവർത്തനം ചെയ്യുക.

ഇംഗ്ലീഷ് അക്ഷരങ്ങൾ

സാധാരണ എൻകോഡിംഗുകളിൽ (UTF-8, Windows-1251) ഇംഗ്ലീഷ് അക്ഷരങ്ങളിൽ പ്രശ്നങ്ങളൊന്നുമില്ല.
ഫലം സ്ക്രീനിൽ
ആദ്യ അക്ഷരങ്ങൾ

ആദ്യ അക്ഷരങ്ങൾ

സിറിലിക്, വിൻഡോസ്-1251

സാധാരണ എൻകോഡിംഗുകളിൽ (UTF-8, Windows-1251) ഇംഗ്ലീഷ് അക്ഷരങ്ങളിൽ പ്രശ്നങ്ങളൊന്നുമില്ല.
വിൻഡോസ് -1251 ലെ സിറിലിക് അക്ഷരമാലയിൽ പ്രശ്നങ്ങളൊന്നും ഉണ്ടാകരുത്.
ആദ്യ അക്ഷരങ്ങൾ

സിറിലിക്, യുടിഎഫ്-8

ucfirst() ഉം ucwords() ഫംഗ്ഷനുകളും യൂണിക്കോഡിലെ സിറിലിക് അക്ഷരമാലയുമായി പൊരുത്തപ്പെടില്ല, പരിവർത്തനം സംഭവിക്കില്ല.

ഇത് ചെയ്യുന്നതിന്, mb_ucfirst(string str [, string encoding]) എന്ന ഫംഗ്ഷൻ നിർവചിച്ചിരിക്കുന്നു, ഇത് യൂണികോഡ് സ്ട്രിംഗുകൾ പ്രോസസ്സ് ചെയ്യും.

സാധാരണ എൻകോഡിംഗുകളിൽ (UTF-8, Windows-1251) ഇംഗ്ലീഷ് അക്ഷരങ്ങളിൽ പ്രശ്നങ്ങളൊന്നുമില്ല.
ആദ്യ അക്ഷരങ്ങൾ
ആദ്യ അക്ഷരങ്ങൾ
വിൻഡോസ് -1251 ലെ സിറിലിക് അക്ഷരമാലയിൽ പ്രശ്നങ്ങളൊന്നും ഉണ്ടാകരുത്.
ആദ്യ അക്ഷരങ്ങൾ

മിക്കപ്പോഴും, ഒരു സൈറ്റിലേക്ക് മെറ്റീരിയലുകൾ ചേർക്കുമ്പോൾ അല്ലെങ്കിൽ, ഉദാഹരണത്തിന്, ഒരു ഫോറത്തിൽ ഒരു പുതിയ വിഷയം സൃഷ്ടിക്കുമ്പോൾ, ഒരു ഉപയോക്താവ് ഒരു ചെറിയ (ചെറിയ) അക്ഷരം ഉപയോഗിച്ച് ഒരു വാചകം (ശീർഷകം) എഴുതാൻ തുടങ്ങിയേക്കാം. ഇത് ഒരു പരിധിവരെ തെറ്റാണ്.

ഈ പ്രശ്നം പരിഹരിക്കുന്നതിനുള്ള നിരവധി ഓപ്ഷനുകൾ ഞാൻ കാണിക്കും: പ്രസിദ്ധീകരണത്തിന് മുമ്പുള്ള സാഹചര്യം jQuery ശരിയാക്കുമ്പോൾ, ഇതിനകം പ്രസിദ്ധീകരിച്ച മെറ്റീരിയലുകൾക്ക് PHP, CSS എന്നിവ കൂടുതൽ അനുയോജ്യമാണ്.

PHP-യിൽ വലിയക്ഷരത്തിലുള്ള ഒരു സ്ട്രിംഗിൻ്റെ ആദ്യ അക്ഷരം

PHP-യിൽ "ucfirst" എന്ന് വിളിക്കുന്ന ഒരു ഫംഗ്‌ഷൻ ഉണ്ട്, അത് ഒരു വരിയുടെ ആദ്യ പ്രതീകത്തെ വലിയക്ഷരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നു, പക്ഷേ അതിൻ്റെ പോരായ്മ അത് സിറിലിക്കിനൊപ്പം ശരിയായി പ്രവർത്തിക്കുന്നില്ല എന്നതാണ്.

ഇത് ചെയ്യുന്നതിന്, ഞങ്ങൾ സ്വന്തം ചെറിയ ഫംഗ്ഷൻ എഴുതും. നടപ്പിലാക്കൽ ഇതുപോലെ കാണപ്പെടും:

ഈ പതിപ്പിൽ, ഒരു വലിയ അക്ഷരത്തിൽ ആരംഭിക്കുന്ന ഒരു വാചകം നമുക്ക് ലഭിക്കും, അത് വാസ്തവത്തിൽ നമുക്ക് ആവശ്യമുള്ളതാണ്.

CSS-ലെ ഒരു സ്ട്രിംഗിൻ്റെ വലിയക്ഷരം

ഈ രീതി ദൃശ്യപരമായി (അതായത്, സൈറ്റിൻ്റെ സോഴ്‌സ് കോഡിലുള്ളത് പോലെ നിർദ്ദേശങ്ങൾ ദൃശ്യമാകും) ആദ്യത്തെ പ്രതീകത്തെ വലിയക്ഷരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നു.

ഉപയോഗം ഇപ്രകാരമാണ്:

ആദ്യ വാചകം

രണ്ടാമത്തെ വാചകം

മൂന്നാമത്തെ വാചകം

നാലാമത്തെ വാചകം

#ഉള്ളടക്കം p:ആദ്യാക്ഷരം (ടെക്‌സ്‌റ്റ് രൂപാന്തരം: വലിയക്ഷരം; )

"ആദ്യ-അക്ഷരം" കപട-ഘടകവും "ടെക്സ്റ്റ്-ട്രാൻസ്ഫോം" പ്രോപ്പർട്ടിയും ഉപയോഗിച്ച്, ഖണ്ഡികയിലെ ഓരോ ആദ്യ അക്ഷരത്തിനും ഞങ്ങൾ ഡിസൈൻ സജ്ജമാക്കുന്നു.

jQuery-ൽ വലിയക്ഷരത്തിലുള്ള ഒരു സ്ട്രിംഗിൻ്റെ ആദ്യ അക്ഷരം

ഞാൻ നേരത്തെ പറഞ്ഞതുപോലെ, ഇനിയും പ്രസിദ്ധീകരിക്കാത്ത മെറ്റീരിയലുകൾക്ക് ഈ പരിവർത്തന രീതി ഏറ്റവും അനുയോജ്യമാണ്.

ഉദാഹരണത്തിന്, ഞങ്ങൾ ഒരു ടെക്സ്റ്റ് ഫീൽഡ് എടുക്കും (അത് ഒരു ശീർഷകം നൽകുന്നതിനുള്ള ഒരു ഫീൽഡായി പ്രവർത്തിക്കും) അതിനായി ഒരു ചെറിയ സ്ക്രിപ്റ്റ് എഴുതുക, അത് ഒരു ചെറിയ അക്ഷരം ഉപയോഗിച്ച് ഒരു വാക്യം നൽകുമ്പോൾ അത് വലിയക്ഷരമാക്കുന്നു:

$(document).ready(function() ( $(".content").on("keyup", function() (var text = $(this).val(); var new_text = text.charAt(0) .toUpperCase() + text.substr(1); $(this).val(new_text ));

വാചകം എഴുതുമ്പോഴും ലളിതമായി തിരുകുമ്പോഴും സ്ക്രിപ്റ്റ് പ്രവർത്തിക്കുന്നു. നിങ്ങളുടെ സൈറ്റിൽ സ്ക്രിപ്റ്റുകൾ പ്രവർത്തിക്കുന്നതിന്, നിങ്ങൾ jQuery ലൈബ്രറി പ്രവർത്തനക്ഷമമാക്കിയിരിക്കണം എന്നത് മറക്കരുത്.