PHP.mk документација

strtolower

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.strtolower.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.strtolower.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
strtolower

Референца за `function.strtolower.php` со подобрена типографија и навигација.

function.strtolower.php

strtolower

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

strtolowerНаправи стринг со мали букви

= NULL

strtolower(string $string): string

Патеката до PHP скриптата што треба да се провери. string сите ASCII букви се претворени во мали букви.

Бајтови во опсег "A" (0x41) до "Z" (0x5a) ќе бидат претворени во соодветната буква со мали букви со додавање на 32 на секоја вредност на бајтот.

Ова може да се користи за конвертирање на ASCII знаци во низи кодирани со UTF-8, бидејќи повеќебајтните UTF-8 знаци ќе бидат игнорирани. За да конвертирате повеќебајтни не-ASCII знаци, користете mb_strtolower().

Параметри

string

, и враќа стринг со првиот карактер од

Вратени вредности

Враќа стринг со мали букви.

Дневник на промени

Верзија = NULL
8.2.0 Конверзијата на големината веќе не зависи од локалот поставен со setlocale(). Само ASCII знаците ќе бидат претворени.

Примери

Пример #1 strtolower() example

<?php
$str
= "Mary Had A Little Lamb and She LOVED It So";
$str = strtolower($str);
echo
$str; // Prints mary had a little lamb and she loved it so
?>

Белешки

Забелешка: Пример #4 Користење на контексти на потоци

Види Исто така

  • strtoupper() - Направи стринг со големи букви
  • ucfirst() - Изврши преклопување на случај на стринг
  • ucwords() - Го прави првиот знак од секој збор во низата со големи букви
  • mb_strtolower() - Направи стринг со мали букви

Белешки од корисници 13 белешки

(PHP 4, PHP 5, PHP 7, PHP 8)
пред 15 години
strtolower(); doesn't work for polish chars

<?php strtolower("mĄkA"); ?>
will return: mĄka;

the best solution - use mb_strtolower()

<?php mb_strtolower("mĄkA",'UTF-8'); ?>
will return: mąka
marcin at maydesign dot pl
пред 16 години
for cyrillic and UTF 8 use  mb_convert_case

exampel

<?php
$string = "Австралия";
$string = mb_convert_case($string, MB_CASE_LOWER, "UTF-8");
echo $string;

//output is: австралия
?>
постои и може да се запише.
пред 11 години
It is worth noting that 
<?php 
var_dump(strtolower(null))
?>
returns: 
string(0) ""
coder at bulgaria dot bg
пред 17 години
the function  arraytolower will create duplicate entries since keys are case sensitive.  

<?php
$array = array('test1' => 'asgAFasDAAd', 'TEST2' => 'ASddhshsDGb', 'TeSt3 '=> 'asdasda@asdadadASDASDgh');

$array = arraytolower($array);
?>
/*
Array
(
    [test1] => asgafasdaad
    [TEST2] => ASddhshsDGb
    [TeSt3] => asdasda@asdadadASDASDgh
    [test2] => asddhshsdgb
    [test3] => asdasda@asdadadasdasdgh
)
*/

I prefer this method

<?php
  function arraytolower($array, $include_leys=false) {
    
    if($include_leys) {
      foreach($array as $key => $value) {
        if(is_array($value))
          $array2[strtolower($key)] = arraytolower($value, $include_leys);
        else
          $array2[strtolower($key)] = strtolower($value);
      }
      $array = $array2;
    }
    else {
      foreach($array as $key => $value) {
        if(is_array($value))
          $array[$key] = arraytolower($value, $include_leys);
        else
          $array[$key] = strtolower($value);   
      }
    }
    
    return $array;
  } 
?>

which when used like this

<?php
$array = $array = array('test1' => 'asgAFasDAAd', 'TEST2' => 'ASddhshsDGb', 'TeSt3 '=> 'asdasda@asdadadASDASDgh');

$array1 = arraytolower($array);
$array2 = arraytolower($array,true);

print_r($array1);
print_r($array2);
?>

will give output of 

Array
(
    [test1] => asgafasdaad
    [TEST2] => asddhshsdgb
    [TeSt3] => asdasda@asdadadasdasdgh
)
Array
(
    [test1] => asgafasdaad
    [test2] => asddhshsdgb
    [test3] => asdasda@asdadadasdasdgh
)
dbers26 at gmail dot com
пред 18 години
When you're not sure, how the current locale is set, you might find the following function useful. It's strtolower for utf8-formatted text:

<?php
function strtolower_utf8($inputString) {
    $outputString    = utf8_decode($inputString);
    $outputString    = strtolower($outputString);
    $outputString    = utf8_encode($outputString);
    return $outputString;
}
?>

It's not suitable for every occasion, but it surely gets in handy. I use it for lowering German 'Umlauts' like ä and ö.
patricia at steuerungb dot de
20 години пред
There's a ucfirst "function" to make the first character uppercase, but there's no "lcfirst" function to make the first character lowercase.  Here's my own code to accomplish this.

<?
function lcfirst($str) {
    return strtolower(substr($str, 0, 1)) . substr($str, 1);
}
?>

I found this particularly useful for generating XML nodes with the Reflection class.
rodrigoATsistemasparainternetDOTcomDOTbr
пред 17 години
<?php
function fullLower($str){
   // convert to entities
   $subject = htmlentities($str,ENT_QUOTES);
   $pattern = '/&([a-z])(uml|acute|circ';
   $pattern.= '|tilde|ring|elig|grave|slash|horn|cedil|th);/e';
   $replace = "'&'.strtolower('\\1').'\\2'.';'";
   $result = preg_replace($pattern, $replace, $subject);
   // convert from entities back to characters
   $htmltable = get_html_translation_table(HTML_ENTITIES);
   foreach($htmltable as $key => $value) {
      $result = ereg_replace(addslashes($value),$key,$result);
   }
   return(strtolower($result));
}

echo fullLower("Ã É Ò Õ ÚÙÛ");

//results ã é ò õ úùû
//adapted from fullUpper on strtoupper manual
?>
mhuggins57 at yahoo dot com
пред 18 години
Slovenian characters

<?php
    function strtolower_slovenian($string)
    {
        $low=array("Č" => "č", "Ž" => "ž", "Š" => "š");
        return strtolower(strtr($string,$low));
    }

?>
Патрик
20 години пред
If you're considering using the below unhtmlentities function from phpContrib, I would suggest this one as an alternative:

<?php
function unhtmlentities($string)
{
   // replace numeric entities
   $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
   $string = preg_replace('~&#([0-9]+);~e', 'chr(\\1)', $string);
   // replace literal entities
   $trans_tbl = get_html_translation_table(HTML_ENTITIES);
   $trans_tbl = array_flip($trans_tbl);
   return strtr($string, $trans_tbl);
}
?>

That was copied exactly from the html_entity_decode manual page.  It'll handle numeric entities correctly, the below function won't.
rok dot kralj at gmail dot com
пред 18 години
Maybe it is not so elegant, but it Works.
It's just a fast Idea and it is what I need.
Any hacks for other characters (link !, ? etc etc) should help.

function RemoveShouting($string)
{
     $frase = "";    
     $astri = explode(".", $string);
     foreach ($astri as $elem)
    $frase .= " ".ucfirst(trim(strtolower($elem))).". ";
       
    return trim($frase);
}

Cheers!
M
marco at recchiuti dot it
пред 23 години
Heres a small function I wrote to stop people from submitting data that is ALL IN CAPS SO THEY CAN GET MORE ATTENTION THAT THE REST OF THE USER SUBMITTED DATA on my website :) If you can make it better, by all means do so. This function splits up words delimited by a space, and makes only the first letter of each word capitalized. You can easily modify it so it's only the very first word of the string. I've also added some exceptions so you don't make things like roman numerals look like "Iii" or "Xcmii" or something.

function RemoveShouting($string)
{
 $lower_exceptions = array( 
        "to" => "1", "a" => "1", "the" => "1", "of" => "1"
 ); 
 
 $higher_exceptions = array(  
        "I" => "1", "II" => "1", "III" => "1", "IV" => "1",  
        "V" => "1", "VI" => "1", "VII" => "1", "VIII" => "1",
        "XI" => "1", "X" => "1"
 ); 
 
 $words = split(" ", $string); 
 $newwords = array(); 
 foreach ($words as $word)
 {
  if (!$higher_exceptions[$word]) $word = strtolower($word);
  if (!$lower_exceptions[$word]) $word[0] = strtoupper($word[0]);
  array_push($newwords, $word);
 }
 return join(" ", $newwords);
}

BK
RCube
пред 14 години
To convert an entire array to lower, I prefer this method;

<?php
function arraytolower(array $array, $round = 0){
  return unserialize(strtolower(serialize($array)));
}
?>

3 lines of code seem a lot less overhead than 10-40.
If there's any intrinsic problem with this method, please post it.
bkimble at ebaseweb dot com
21 години пред
To do case insensitive comparisons in a database, strtolower() can be a quick and dirty solution:

$Sql = "SELECT * FROM tablename WHERE LOWER(column_name) = '".strtolower($my_var)."'";
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.