W jaki sposób mogę skapitalizować tylko ostatnią literę ciągu znaków w postaci.Zamień na ostatnią literę ciągu znaków
Na przykład
hello
postać:
hellO
W jaki sposób mogę skapitalizować tylko ostatnią literę ciągu znaków w postaci.Zamień na ostatnią literę ciągu znaków
Na przykład
hello
postać:
hellO
Istnieją dwie części niniejszego. Po pierwsze, musisz wiedzieć, jak zdobyć części łańcuchów. Do tego potrzebna jest funkcja substr()
.
Następnie istnieje funkcja do wpisania wielkimi literami ciągu o nazwie strtotupper()
.
$thestring="Testing testing 3 2 1. aaaa";
echo substr($thestring, 0, strlen($thestring)-2) . strtoupper(substr($thestring, -1));
zawiłe, ale zabawa:
echo strrev(ucfirst(strrev("hello")));
Demo: http://ideone.com/7QK5B
jako funkcję:
function uclast($str) {
return strrev(ucfirst(strrev($str)));
}
To działa świetnie! kiedy wchodzę w to tak, ale dla tego, co próbuję zrobić, to w wordpressie zmień tytuł strony na wszystkie małe litery i na wielkie litery. na przykład: teraz tytuł pojawia się jako strona przykładowa. Chcę, aby pojawił się jako przykładowa strona. heres co próbowałem, ale nie działa 'kod' php \t \t \t $ str = the_title(); \t \t \t \t \t echo strrev (ucfirst (strrev ($ str))); \t \t \t \t \t?> – Kathy
Niestety nie wiesz, jak tworzyć bloki kodu tutaj :) – Kathy
@Kathy: '$ str = strtolower (the_title());' first then. Jeśli to nie zadziała, prawdopodobnie wystąpiłby błąd w funkcji 'the_title()'. –
Oto algorytm:
1. Split the string s = xyz where x is the part of
the string before the last letter, y is the last
letter, and z is the part of the string that comes
after the last letter.
2. Compute y = Y, where Y is the upper-case equivalent
of y.
3. Emit S = xYz
Kiedy $s
jest ciąg (Demo):
$s[$l=strlen($s)-1] = strtoupper($s[$l]);
Albo w postaci funkcji:
function uclast($s)
{
$l=strlen($s)-1;
$s[$l] = strtoupper($s[$l]);
return $s;
}
A dla rozszerzonych musi mieć wszystko małymi literami z wyjątkiem ostatniego znaku wyraźnie górny -case:
function uclast($s)
{
$l=strlen($s)-1;
$s = strtolower($s);
$s[$l] = strtoupper($s[$l]);
return $s;
}
Małe/małe/mieszane litery dla wszystkich następujących może być używany
<?php
$word = "HELLO";
//or
$word = "hello";
//or
$word = "HeLLo";
$word = strrev(ucfirst(strrev(strtolower($word))));
echo $word;
?>
wyjście dla wszystkich słów
hellO
z ciągu? Masz na myśli akapit/zdanie/słowo? W przeciwnym razie robisz 'strtoupper()' na ostatniej pozycji w zmiennej łańcuchowej, którą kontrolujesz. –
'echo strrev (ucfirst (strrev (" cześć ")));'; p – karim79
@ karim79, to znacznie lepiej niż mój pomysł, powinieneś opublikować go jako odpowiedź. – Brad