String functionsStrings
These functions all manipulate strings in various ways. Some more
specialized sections can be found in the regular expression and
URL handling sections.
AddCSlashesQuote string with slashes in a C style.Descriptionstring addcslashesstring strstring charlist
Returns a string with backslashes before characters that are
listed in charlist parameter. It escapes
\n, \r etc. in C-like
style, characters with ASCII code lower than 32 and higher than
126 are converted to octal representation. Be carefull when
escaping alphanumeric characters. You can specify a range in
charlist like "\0..\37", which would
escape all characters with ASCII code between 0 and 31.
Addcslashes example
$escaped = addcslashes ($not_escaped, "\0..\37!@\177..\377");
Added in PHP4b3-dev.
See also stripcslashes,
stripslashes,
htmlspecialchars,
htmlspecialchars, and
quotemeta.
AddSlashesQuote string with slashesDescriptionstring addslashesstring str
Returns a string with backslashes before characters that need
to be quoted in database queries etc. These characters are
single quote ('), double quote
("), backslash (\)
and NUL (the null byte).
See also stripslashes,
htmlspecialchars, and
quotemeta.
bin2hex
Convert binary data into hexadecimal representation
Descriptionstring bin2hexstring str
Returns an ASCII string containing the hexadecimal representation
of str. The conversion is done byte-wise
with the high-nibble first.
ChopRemove trailing whitespace.Descriptionstring chopstring str
Returns the argument string without trailing whitespace,
including newlines.
Chop example
$trimmed = chop ($line);
See also trim.
ChrReturn a specific character.Descriptionstring chrint ascii
Returns a one-character string containing the character specified
by ascii.
Chr example
$str .= chr (27); /* add an escape character at the end of $str */
/* Often this is more useful */
$str = sprintf ("The string ends in escape: %c", 27);
This function complements ord. See also
sprintf with a format string of
%c.
chunk_splitSplit a string into smaller chunks.Descriptionstring chunk_splitstring stringint
chunklenstring
end
Can be used to split a string into smaller chunks which is useful
for e.g. converting base64_encode output to
match RFC 2045 semantics. It inserts every
chunklen (defaults to 76) chars the string
end (defaults to "\r\n"). It returns the
new string leaving the original string untouched.
Chunk_split example
# format $data using RFC 2045 semantics
$new_string = chunk_split (base64_encode($data));
This function is significantly faster than
ereg_replace.
This function was added in 3.0.6.
convert_cyr_string
Convert from one Cyrillic character set to another.
Descriptionstring convert_cyr_stringstring strstring fromstring to
This function converts the given string from one Cyrillic
character set to another. The from and
to arguments are single characters that
represent the source and target Cyrillic character sets. The
supported types are:
k - koi8-r
w - windows-1251
i - iso8859-5
a - x-cp866
d - x-cp866
m - x-mac-cyrillic
count_chars
Return information abouts characters used in a string.
Descriptionmixed count_charsstring stringmode
Counts the number of occurances of every byte-value (0..255) in
string and returns it in various ways.
The optional parameter Mode default to
0. Depending on modecount_chars returns one of the following:
0 - an array with the byte-value as key and the freqency of
every byte as value.
1 - same as 0 but only byte-values with a frequency greater
than zero are listed.
2 - same as 0 but only byte-values with a frequency equal to
zero are listed.
3 - a string containing all used byte-values is returned.
4 - a string containing all not used byte-values is returned.
This function was added in PHP 4.0.
cryptDES-encrypt a string.Descriptionstring cryptstring strstring
saltcrypt will encrypt a string using the
standard Unix DES encryption method. Arguments
are a string to be encrypted and an optional two-character salt
string to base the encryption on. See the Unix man page for your
crypt function for more information.
If the salt argument is not provided, it will be randomly
generated by PHP.
Some operating systems support more than one type of encryption.
In fact, sometimes the standard DES encryption is replaced by an
MD5 based encryption algorithm. The encryption type is triggered
by the salt argument. At install time, PHP determines the
capabilities of the crypt function and will accept salts for
other encryption types. If no salt is provided, PHP will
auto-generate a standard 2-character DES salt by default unless
the default encryption type on the system is MD5 in which case a
random MD5-compatible salt is generated. PHP sets a constant
named CRYPT_SALT_LENGTH which tells you whether a regular
2-character salt applies to your system or the longer 12-char MD5
salt is applicable.
The standard DES encryption crypt contains
the salt as the first two characters of the output.
On systems where the crypt() function supports multiple
encryption types, the following constants are set to 0 or 1
depending on whether the given type is available:
CRYPT_STD_DES - Standard DES encryption with a 2-char SALT
CRYPT_EXT_DES - Extended DES encryption with a 9-char SALT
CRYPT_MD5 - MD5 encryption with a 12-char SALT starting with
$1$
CRYPT_BLOWFISH - Extended DES encryption with a 16-char SALT
starting with $2$
There is no decrypt function, since crypt
uses a one-way algorithm.
echoOutput one or more strings.Descriptionechostring arg1string
argn...
Outputs all parameters.
Echo is not actually a function (it is a
language construct) so you are not required to use parantheses
with it.
Echo example
echo "Hello World";
echo "This spans
multiple lines. The newlines will be
output as well";
echo "This spans\nmultiple lines. The newlines will be\noutput as well.";
In fact, if you want to pass more than one parameter to echo,
you must not enclose the parameters within parentheses.
See also:
print,
printf, and
flush.
explodeSplit a string by stringDescriptionarray explodestring separatorstring stringint limit
Returns an array of strings, each of which is a substring of
string formed by splitting it on boundaries formed
by the string delim.
If limit is set, the returned array will contaion
a maximum of limit elements with the last element
containing the whole rest of string.
Explode example
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode (" ", $pizza);
See also split and
implode.
flushFlush the output buffer.Descriptionvoid flush
Flushes the output buffers of PHP and whatever backend PHP is
using (CGI, a web server, etc.) This effectively tries to push
all the output so far to the user's browser.
get_html_translation_table
Returns the translation table used by
htmlspecialchars and
htmlentities.
Descriptionstring
get_html_translation_tableint tableget_html_translation_table will return the
translation table that is used internally for
htmlspecialchars and
htmlentities. Ther are two new defines
(HTML_ENTITIES,
HTML_SPECIALCHARS) that allow you to
specify the table you want.
Translation Table Example
$trans = get_html_translation_table (HTML_ENTITIES);
$str = "Hallo & <Frau> & Krämer";
$encoded = strtr ($str, $trans);
The $encoded variable will now contain: "Hallo
&
<Frau>
& Krämer".
The cool thing is using array_flip to change
the direction of the translation.
$trans = array_flip ($trans);
$original = strtr ($str, $trans);
The content of $original would be: "Hallo &
<Frau> & Krämer".
This function was added in PHP 4.0.
See also: htmlspecialchars,
htmlentities, strtr,
and array_flip.
get_meta_tags
Extracts all meta tag content attributes from a file and returns
an array.
Descriptionarray get_meta_tagsstring filenameint
use_include_path
Opens filename and parses it line by line
for <meta> tags of the form
Meta Tags Example
<meta name="author" content="name">
<meta name="tags" content="php3 documentation">
</head> <!-- parsing stops here -->
(pay attention to line endings - PHP uses a native function to
parse the input, so a Mac file won't work on Unix).
The value of the name property becomes the key, the value of the
content property becomes the value of the returned array, so you
can easily use standard array functions to traverse it or access
single values. Special characters in the value of the name
property are substituted with '_', the rest is converted to lower
case.
Setting use_include_path to 1 will result
in PHP trying to open the file along the standard include path.
htmlentities
Convert all applicable characters to HTML entities.
Descriptionstring htmlentitiesstring string
This function is identical to
Htmlspecialchars in all ways, except that
all characters which have HTML entity equivalents are translated
into these entities.
At present, the ISO-8859-1 character set is used.
See also htmlspecialchars and
nl2br.
htmlspecialchars
Convert special characters to HTML entities.
Descriptionstring htmlspecialcharsstring string
Certain characters have special significance in HTML, and should
be represented by HTML entities if they are to preserve their
meanings. This function returns a string with these conversions
made.
This function is useful in preventing user-supplied text from
containing HTML markup, such as in a message board or guest book
application.
At present, the translations that are done are:
'&' (ampersand) becomes '&'
'"' (double quote) becomes '"'
'<' (less than) becomes '<'
'>' (greater than) becomes '>'
Note that this functions does not translate anything beyond what
is listed above. For full entity translation, see
htmlentities.
See also htmlentities and
nl2br.
implodeJoin array elements with a stringDescriptionstring implodestring gluearray pieces
Returns a string containing a string representation of all the
array elements in the same order, with the glue string between
each element.
Implode example
$colon_separated = implode (":", $array);
See also explode, join,
and split.
joinJoin array elements with a string.Descriptionstring joinstring gluearray piecesjoin is an alias to
implode, and is identical in every way.
See also explode, implode,
and split.
levenshtein
Calculate Levenshtein distance between two strings
Descriptionint levenshteinstring str1string str2
This function return the Levenshtein-Distance between the
two argument strings or -1, if one of the argument strings
is longer than the limit of 255 characters.
The Levenshtein distance is defined as the minimal number
of characters you have to replace, insert or delete to
transform str1 into
str2.
The complexity of the algorithm is O(m*n),
where n and m are the
length of str1 and
str2 (rather good when compared to
similar_text, which is O(max(n,m)**3),
but still expensive).
See also soundex,
similar_text
and metaphone.
ltrim
Strip whitespace from the beginning of a string.
Descriptionstring ltrimstring str
This function strips whitespace from the start of a string and
returns the stripped string. The whitespace
characters it currently strips are: "\n", "\r", "\t", "\v", "\0",
and a plain space.
See also chop and trim.
md5Calculate the md5 hash of a string.Descriptionstring md5string str
Calculates the MD5 hash of str using the
RSA Data Security, Inc.
MD5 Message-Digest Algorithm.
MetaphoneCalculate the metaphone key of a string.Descriptionstring metaphonestring str
Calculates the metaphone key of str.
Similar to soundex metaphone creates the
same key for similar sounding words. It's more accurate than
soundex as it knows the basic rules of
English pronunciation. The metaphone generated keys are of
variable length.
Metaphone was developed by Lawrence Philips
<lphilips@verity.com>. It is described in ["Practical
Algorithms for Programmers", Binstock & Rex, Addison Wesley,
1995].
This function was added in PHP 4.0.
nl2brConverts newlines to HTML line breaks.Descriptionstring nl2brstring string
Returns string with '<BR>' inserted
before all newlines.
See also htmlspecialchars and
htmlentities.
OrdReturn ASCII value of character.Descriptionint ordstring string
Returns the ASCII value of the first character of
string. This function complements
chr.
Ord example
if (ord ($str) == 10) {
echo "The first character of \$str is a line feed.\n";
}
See also chr.
parse_strParses the string into variables.Descriptionvoid parse_strstring str
Parses str as if it were the query string
passed via an URL and sets variables in the current scope.
Using parse_str
$str = "first=value&second[]=this+works&second[]=another";
parse_str($str);
echo $first; /* prints "value" */
echo $second[0]; /* prints "this works" */
echo $second[1]; /* prints "another" */
printOutput a stringDescriptionprintstring arg
Outputs arg.
See also: echo, printf,
and flush.
printfOutput a formatted string.Descriptionint printfstring formatmixed
args...
Produces output according to format, which
is described in the documentation for sprintf.
See also: print,
sprintf, and flush.
quoted_printable_decode
Convert a quoted-printable string to an 8 bit string.
Descriptionstring
quoted_printable_decodestring str
This function returns an 8-bit binary string corresponding to the
decoded quoted printable string. This function is similar to
imap_qprint, except this one does not
require the IMAP module to work.
QuoteMetaquote meta charactersDescriptionstring quotemetastring str
Returns a version of str with a backslash character
(\) before every character that is among
these: . \\ + * ? [ ^ ] ( $ )
See also addslashes,
htmlentities,
htmlspecialchars,
nl2br, and
stripslashes.
rawurldecodeDecode URL-encoded stringsDescriptionstring rawurldecodestring str
Returns a string in which the sequences with percent
(%) signs followed by two hex digits have been
replaced with literal characters. For example, the string
foo%20bar%40baz decodes into foo
bar@baz.
See also rawurlencode.
rawurlencodeURL-encode according to RFC1738.Descriptionstring rawurlencodestring str
Returns a string in which all non-alphanumeric characters except
-_. have been replaced with a percent
(%) sign followed by two hex digits. This is
the encoding described in RFC1738 for protecting literal
characters from being interpreted as special URL delimiters, and
for protecting URL's from being mangled by transmission media
with character conversions (like some email systems). For
example, if you want to include a password in an ftp url:
Rawurlencode example 1
echo '<A HREF="ftp://user:', rawurlencode ('foo @+%/'),
'@ftp.my.com/x.txt">';
Or, if you pass information in a path info component of the url:
Rawurlencode example 2
echo '<A HREF="http://x.com/department_list_script/',
rawurlencode ('sales and marketing/Miami'), '">';
See also rawurldecode.
setlocaleSet locale information.Descriptionstring setlocalestring categorystring localeCategory is a string specifying the
category of the functions affected by the locale setting:
LC_ALL for all of the below
LC_COLLATE for string comparison - not currently implemented in PHP
LC_CTYPE for character classification and conversion, for
example strtoupper
LC_MONETARY for localeconv() - not currently implemented in
PHP
LC_NUMERIC for decimal separator
LC_TIME for date and time formatting with
strftime
If locale is the empty string
"", the locale names will be set from the
values of environment variables with the same names as the above
categories, or from "LANG".
If locale is zero or "0", the locale setting
is not affected, only the current setting is returned.
Setlocale returns the new current locale, or false if the locale
functionality is not implemented in the plattform, the specified
locale does not exist or the category name is invalid.
An invalid category name also causes a warning message.
similar_text
Calculate the similarity between two strings.
Descriptionint similar_textstring firststring seconddouble
percent
This calculates the similarity between two strings as described
in Oliver [1993]. Note that this implementation does not use a
stack as in Oliver's pseudo code, but recursive calls which may
or may not speed up the whole process. Note also that the
complexity of this algorithm is O(N**3) where N is the length of
the longest string.
By passing a reference as third argument,
similar_text will calculate the similarity
in percent for you. It returns the number of matching chars in
both strings.
soundexCalculate the soundex key of a stringDescriptionstring soundexstring str
Calculates the soundex key of str.
Soundex keys have the property that words pronounced similarly
produce the same soundex key, and can thus be used to simplify
searches in databases where you know the pronunciation but not
the spelling. This soundex function returns a string 4 characters
long, starting with a letter.
This particular soundex function is one described by Donald Knuth
in "The Art Of Computer Programming, vol. 3: Sorting And
Searching", Addison-Wesley (1973), pp. 391-392.
Soundex Examples
soundex ("Euler") == soundex ("Ellery") == 'E460';
soundex ("Gauss") == soundex ("Ghosh") == 'G200';
soundex ("Knuth") == soundex ("Kant") == 'H416';
soundex ("Lloyd") == soundex ("Ladd") == 'L300';
soundex ("Lukasiewicz") == soundex ("Lissajous") == 'L222';
sprintfReturn a formatted stringDescriptionstring sprintfstring formatmixed
args...
Returns a string produced according to the formatting string
format.
The format string is composed by zero or more directives:
ordinary characters (excluding %) that are
copied directly to the result, and conversion
specifications, each of which results in fetching its
own parameter. This applies to both sprintf
and printf.
Each conversion specification consists of these elements, in
order:
An optional padding specifier that says
what character will be used for padding the results to the
right string size. This may be a space character or a
0 (zero character). The default is to pad
with spaces. An alternate padding character can be specified
by prefixing it with a single quote (').
See the examples below.
An optional alignment specifier that says
if the result should be left-justified or right-justified.
The default is right-justified; a -
character here will make it left-justified.
An optional number, a width specifier
that says how many characters (minimum) this conversion should
result in.
An optional precision specifier that says
how many decimal digits should be displayed for floating-point
numbers. This option has no effect for other types than
double. (Another function useful for formatting numbers is
number_format.)
A type specifier that says what type the
argument data should be treated as. Possible types:
% - a literal percent character. No
argument is required.
b - the argument is treated as an
integer, and presented as a binary number.
c - the argument is treated as an
integer, and presented as the character with that ASCII
value.
d - the argument is treated as an
integer, and presented as a decimal number.
f - the argument is treated as a double,
and presented as a floating-point number.
o - the argument is treated as an
integer, and presented as an octal number.
s - the argument is treated as and
presented as a string.
x - the argument is treated as an integer
and presented as a hexadecimal number (with lowercase
letters).
X - the argument is treated as an integer
and presented as a hexadecimal number (with uppercase
letters).
See also: printf and
number_format.
ExamplesSprintf: zero-padded integers
$isodate = sprintf ("%04d-%02d-%02d", $year, $month, $day);
Sprintf: formatting currency
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money will output "123.1";
$formatted = sprintf ("%01.2f", $money);
// echo $formatted will output "123.10"
strcasecmp
Binary safe case-insensitive string comparison.
Descriptionint strcasecmpstring str1string str2
Returns < 0 if str1 is less than
str2; > 0 if str1
is greater than str2, and 0 if they are
equal.
strcasecmp example
$var1 = "Hello";
$var2 = "hello";
if ( !strcasecmp($var1,$var2) ) {
echo '$var1 is equal to $var2 in a case-insensitive string comparison';
}
See also ereg, strcmp,
substr, stristr, and
strstr.
strchr
Find the first occurrence of a character.
Descriptionstring strchrstring haystackstring needle
This function is an alias for strstr, and is
identical in every way.
strcmpBinary safe string comparisonDescriptionint strcmpstring str1string str2
Returns < 0 if str1 is less than
str2; > 0 if str1
is greater than str2, and 0 if they are
equal.
Note that this comparison is case sensitive.
See also ereg,
strcasecmp, substr,
stristr, and strstr.
strcspn
Find length of initial segment not matching mask.
Descriptionint strcspnstring str1string str2
Returns the length of the initial segment of
str1 which does not
contain any of the characters in str2.
See also strspn.
strip_tagsStrip HTML and PHP tags from a stringDescriptionstring strip_tagsstring strstring
allowable_tags
This function tries to strip all HTML and PHP tags from the given
string. It errors on the side of caution in case of incomplete
or bogus tags. It uses the same tag stripping state machine as
the fgetss function.
You can use the optional second parameter to specify tags which
should not be stripped.
Allowable_tags was added in PHP 3.0.13,
PHP4B3.
StripCSlashesun-quote string quoted with addcslashesDescriptionstring stripcslashesstring str
Returns a string with backslashes stripped off. Recognizes
C-like \n, \r ..., octal
and hexadecimal representation.
Added in PHP4b3-dev.
See also addcslashes.
StripSlashesUn-quote string quoted with addslashesDescriptionstring stripslashesstring str
Returns a string with backslashes stripped off.
(\' becomes ' and so on.)
Double backslashes are made into a single backslash.
See also addslashes.
stristr
Case-insensitive strstr.
Descriptionstring stristrstring haystackstring needle
Returns all of haystack from the first
occurrence of needle to the end.
needle and haystack
are examined in a case-insensitive manner.
If needle is not found, returns false.
If needle is not a string, it is converted
to an integer and applied as the ordinal value of a character.
See also strchr,
strrchr, substr, and
ereg.
strlenGet string length.Descriptionint strlenstring str
Returns the length of string.
strpos
Find position of first occurrence of a string.
Descriptionint strposstring haystackstring needleint
offset
Returns the numeric position of the first occurrence of
needle in the
haystack string. Unlike the
strrpos, this function can take a full
string as the needle parameter and the
entire string will be used.
If needle is not found, returns false.
It is easy to mistake the return values for "character found at
position 0" and "character not found". Here's how to detect
the difference:
// in PHP 4.0b3 and newer:
$pos = strpos ($mystring, "b");
if ($pos === false) { // note: three equal signs
// not found...
}
// in versions older than 4.0b3:
$pos = strpos ($mystring, "b");
if (is_string ($pos) && !$pos) {
// not found...
}
If needle is not a string, it is converted
to an integer and applied as the ordinal value of a character.
The optional offset parameter allows you
to specify which character in haystack to
start searching. The position returned is still relative to the
the beginning of haystack.
See also strrpos,
strrchr, substr,
stristr, and strstr.
strrchr
Find the last occurrence of a character in a string.
Descriptionstring strrchrstring haystackstring needle
This function returns the portion of
haystack which starts at the last
occurrence of needle and goes until the
end of haystack.
Returns false if needle is not found.
If needle contains more than one
character, the first is used.
If needle is not a string, it is converted
to an integer and applied as the ordinal value of a character.
Strrchr example
// get last directory in $PATH
$dir = substr (strrchr ($PATH, ":"), 1);
// get everything after last newline
$text = "Line 1\nLine 2\nLine 3";
$last = substr (strrchr ($text, 10), 1 );
See also substr,
stristr, and strstr.
str_repeatRepeat a string.Descriptionstring str_repeatstring inputint multiplier
Returns input_str repeated
multiplier times.
multiplier has to be greater than 0.
Str_repeat example
echo str_repeat ("-=", 10);
This will output "-=-=-=-=-=-=-=-=-=-=".
This function was added in PHP 4.0.
strrevReverse a string.Descriptionstring strrevstring string
Returns string, reversed.
strrpos
Find position of last occurrence of a char in a string.
Descriptionint strrposstring haystackchar needle
Returns the numeric position of the last occurrence of
needle in the
haystack string. Note that the needle in
this case can only be a single character. If a string is passed
as the needle, then only the first character of that string will
be used.
If needle is not found, returns false.
If needle is not a string, it is converted
to an integer and applied as the ordinal value of a character.
See also strpos,
strrchr, substr,
stristr, and strstr.
strspn
Find length of initial segment matching mask.
Descriptionint strspnstring str1string str2
Returns the length of the initial segment of
str1 which consists entirely of characters
in str2.
See also strcspn.
strstrFind first occurrence of a string.Descriptionstring strstrstring haystackstring needle
Returns all of haystack from the first
occurrence of needle to the end.
If needle is not found, returns false.
If needle is not a string, it is converted
to an integer and applied as the ordinal value of a character.
Strstr example
$email = 'sterling@designmultimedia.com';
$domain = strstr ($email, '@');
print $domain; // prints designmultimedia.com
See also stristr,
strrchr, substr, and
ereg.
strtokTokenize stringDescriptionstring strtokstring arg1string arg2strtok is used to tokenize a string. That
is, if you have a string like "This is an example string" you
could tokenize this string into its individual words by using the
space character as the token.
Strtok example
$string = "This is an example string";
$tok = strtok ($string," ");
while ($tok) {
echo "Word=$tok<br>";
$tok = strtok (" ");
}
Note that only the first call to strtok uses the string argument.
Every subsequent call to strtok only needs the token to use, as
it keeps track of where it is in the current string. To start
over, or to tokenize a new string you simply call strtok with the
string argument again to initialize it. Note that you may put
multiple tokens in the token parameter. The string will be
tokenized when any one of the characters in the argument are
found.
Also be careful that your tokens may be equal to "0". This
evaluates to false in conditional expressions.
See also split and
explode.
strtolowerMake a string lowercase.Descriptionstring strtolowerstring str
Returns string with all alphabetic
characters converted to lowercase.
Note that 'alphabetic' is determined by the current locale. This
means that in i.e. the default "C" locale, characters such as
umlaut-A (Ä) will not be converted.
Strtolower example
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtolower($str);
print $str; # Prints mary had a little lamb and she loved it so
See also strtoupper
and ucfirst.
strtoupperMake a string uppercase.Descriptionstring strtoupperstring string
Returns string with all alphabetic
characters converted to uppercase.
Note that 'alphabetic' is determined by the current locale. For
instance, in the default "C" locale characters such as umlaut-a
(ä) will not be converted.
Strtoupper example
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtoupper ($str);
print $str; # Prints MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
See also strtolower
and ucfirst.
str_replace
Replace all occurrences of needle in haystack with str.
Descriptionstring str_replacestring needlestring strstring haystack
This function replaces all occurences of
needle in haystack
with the given str. If you don't need
fancy replacing rules, you should always use this function
instead of ereg_replace.Str_replace example
$bodytag = str_replace ("%body%", "black", "<body text=%body%>");
This function is binary safe.
Str_replace was added in PHP 3.0.6, but was
buggy up until PHP 3.0.8.
See also ereg_replace and
strtr.
strtrTranslate certain characters.Descriptionstring strtrstring strstring fromstring to
This function operates on str, translating
all occurrences of each character in from
to the corresponding character in to and
returning the result.
If from and to are
different lengths, the extra characters in the longer of the two
are ignored.
Strtr example
$addr = strtr($addr, "äåö", "aao");
strtr can be called with only two
arguments. If called with two arguments it behaves in a new way:
from then has to be an array that contains
string -> string pairs that will be replaced in the source
string. strtr will always look for the
longest possible match first and will *NOT* try to replace stuff
that it has already worked on.
Examples:
$trans = array ("hello" => "hi", "hi" => "hello");
echo strtr("hi all, I said hello", $trans) . "\n";
This will show: "hello all, I said hi",
This feature (two arguments) was added in PHP 4.0.
See also ereg_replace.
substrReturn part of a stringDescriptionstring substrstring stringint startint
length
Substr returns the portion of string
specified by the start and
length parameters.
If start is positive, the returned string
will start at the start'th character of
string.
Examples:
$rest = substr ("abcdef", 1); // returns "bcdef"
$rest = substr ("abcdef", 1, 3); // returns "bcd"
If start is negative, the returned string
will start at the start'th character
from the end of string.
Examples:
$rest = substr ("abcdef", -1); // returns "f"
$rest = substr ("abcdef", -2); // returns "ef"
$rest = substr ("abcdef", -3, 1); // returns "d"
If length is given and is positive, the
string returned will end length characters
from start. If this would result in a
string with negative length (because the start is past the end of
the string), then the returned string will contain the single
character at start.
If length is given and is negative, the
string returned will end length characters
from the end of string. If this would
result in a string with negative length, then the returned string
will contain the single character at
start.
Examples:
$rest = substr ("abcdef", 1, -1); // returns "bcde"
See also strrchr and
ereg.
substr_replaceReplace text within a portion of a string.Descriptionstring substr_replacestring stringstring replacementint startint
lengthsubstr_replace replaces the part of
string delimited by the
start and (optionally)
length parameters with the string given in
replacement. The result is returned.
If start is positive, the replacing will
begin at the start'th offset into
string.
If start is negative, the replacing will
begin at the start'th character from the
end of string.
If length is given and is positive, it
represents the length of the portion of
string which is to be replaced. If it is
negative, it represents the number of characters from the end of
string at which to stop replacing. If it
is not given, then it will default to strlen(
string ); i.e. end the replacing at the
end of string.
Substr_replace example
<?php
$var = 'ABCDEFGH:/MNRPQR/';
echo "Original: $var<hr>\n";
/* These two examples replace all of $var with 'bob'. */
echo substr_replace ($var, 'bob', 0) . "<br>\n";
echo substr_replace ($var, 'bob', 0, strlen ($var)) . "<br>\n";
/* Insert 'bob' right at the beginning of $var. */
echo substr_replace ($var, 'bob', 0, 0) . "<br>\n";
/* These next two replace 'MNRPQR' in $var with 'bob'. */
echo substr_replace ($var, 'bob', 10, -1) . "<br>\n";
echo substr_replace ($var, 'bob', -7, -1) . "<br>\n";
/* Delete 'MNRPQR' from $var. */
echo substr_replace ($var, '', 10, -1) . "<br>\n";
?>
See also str_replace and
substr.
Substr_replace was added in PHP 4.0.
trim
Strip whitespace from the beginning and end of a string.
Descriptionstring trimstring str
This function strips whitespace from the start and the end of a
string and returns the stripped string. The whitespace
characters it currently strips are: "\n", "\r", "\t", "\v", "\0",
and a plain space.
See also chop and
ltrim.
ucfirst
Make a string's first character uppercase.
Descriptionstring ucfirststring str
Capitalizes the first character of str if
that character is alphabetic.
Note that 'alphabetic' is determined by the current locale. For
instance, in the default "C" locale characters such as umlaut-a
(ä) will not be converted.
ucfirst example
$text = 'mary had a little lamb and she loved it so.';
$text = ucfirst($text); // $text is now Mary had a little lamb and she loved it so.
See also strtoupper and
strtolower.
ucwords
Uppercase the first character of each word in a string
Descriptionstring ucwordsstring str
Capitalizes the first character of each word in
str if that character is alphabetic.
ucwords example
$text = "mary had a little lamb and she loved it so.";
$text = ucwords($text); // $text is now: Mary Had A Little Lamb And She Loved It So.
See also strtoupper,
strtolower and ucfirst.