PHP

Preview:

DESCRIPTION

PHP. Strings. Outline. String Variables In PHP The Most Used Functions In PHP Arrays Functions Transforming String Comparing Strings Searching Strings String Replace. String Variables in PHP. - PowerPoint PPT Presentation

Citation preview

PHP

Strings

Outline

o String Variables In PHP

o The Most Used Functions In PHP

o Arrays Functions

o Transforming String

o Comparing Strings

o Searching Strings

o String Replace

String Variables in PHP

• String objects are a special type of container,

specifically designed to operate with sequences of

characters.

• A string variable is used to store and manipulate text.

• String variables are used for values that contain

characters.

String Variables in PHP

• String can be defined using one of several methods,

we encapsulate them in single quotes or double

quotes .

• We using the string to display some notation .

The Most Used Functions In PHP

Strlen()

• Returns the length of the given string.

• The length of the string on success, and 0 if

the string is empty.

Int strlen(string)

Strlen()

<?php

$str = "welcome in my profile";

echo strlen($str);

?>

strtoupper()

• Returns string with all alphabetic characters

converted to uppercase.

• Returns the uppercased string.

string strtoupper ( string $string )

strtoupper()

<?php$str = “make a string uppercase ";$str = strtoupper($str);echo $str;

?>

strtolower ()

• Returns string with all alphabetic characters converted to lowercase.

• Returns the lowercased string.

string  strtolower   ( string $string )

strtolower()

<?php$str = “MAKE A STRING LOWERCASE ";$str = strtolower($str);echo $str;

?>

ucfirst()

• Returns a string with the first character of str capitalized, if that character is alphabetic.

• Returns the resulting string.

string ucfirst ( string $str )

ucfirst()

<?php$str = “Make a string's first character uppercase ";$str = ucfirst($str);echo $str;

?>

ucwords()

• Returns a string with the first character of each word in str capitalized, if that character is alphabetic.

• Returns the modified string.

string ucwords ( string $str )

ucwords()

<?php$str = “uppercase the first character of each word in a string ";$str = ucwords($str);echo $str;

?>

substr_count()

• substr_count() returns the number of times the needle substring occurs in the haystack string. Please note that needle is case sensitive.

• This function returns an integer.

int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] )

substr_count()

<?php

echo substr_count("Hello world. The world is nice","world");

?>

explode ()

• Returns an array of strings, each of which is a substring of string formed by splitting it on boundaries formed by the string delimiter.

• <?php// Example 1$chars = “A B C D E F";$pieces = explode(" ", $chars);echo $pieces[0]; // Aecho $pieces[1]; // B

• ?>

array explode ( string $delimiter , string $string [, int $limit ] )

implode ()

• Join array elements with a glue string.• Returns a string containing a string representation of

all the array elements in the same order, with the glue string between each element.

string implode ( string $glue , array $pieces )

string implode ( array $pieces )

implode ()

<?php

$array = array('lastname', 'email', 'phone');$comma_separated = implode(",", $array);

echo $comma_separated; // lastname,email,phone

?>

str_split ()

• Converts a string to an array.

• If the optional split_length parameter is specified, the returned array will

be broken down into chunks with each being split_length in length,

otherwise each chunk will be one character in length.

• FALSE is returned if split_length is less than 1. If the split_length length

exceeds the length of string, the entire string is returned as the first (and

only) array element.

array str_split ( string $string [, int $split_length = 1 ] )

str_split ()

• <?php

$str = "Hello Friend";

$arr1 = str_split($str);$arr2 = str_split($str, 3);

print_r($arr1);print_r($arr2);

?>

str_repeat ()

• Returns input repeated multiplier times.

<?phpecho str_repeat("-=", 10);

?>

string str_repeat ( string $input , int $multiplier )

strrev() 

• Returns string, reversed.• Returns the reversed string.

string strrev ( string $string )

strrev() 

<?phpecho strrev("Hello world!"); // outputs "!dlrow olle

?>

str_word_count()

• Specify the return value of this function. The current supported values

are:

• 0 - returns the number of words found

• 1 - returns an array containing all the words found inside the string

• 2 - returns an associative array, where the key is the numeric position of

the word inside the string and the value is the actual word itself

 str_word_count ( string $string [, int $format = 0 [, string $charlist ]] )

str_word_count()

<?php

$str = "Hello fri3nd, you're looking good today!";

print_r(str_word_count($str, 1));print_r(str_word_count($str, 2));print_r(str_word_count($str, 1, 'àáãç3'));

echo str_word_count($str);

?>

str_shuffle ()

• str_shuffle() shuffles a string. One permutation of all possible is created.

• Returns the shuffled string.

string str_shuffle ( string $str )

str_shuffle ()<?php

$str = 'abcdef';$shuffled = str_shuffle($str);

// This will echo something like: bfdaececho $shuffled;

?>

string str_shuffle ( string $str )

rand ()

• If called without the

optional min, max arguments rand() returns a pseudo-

random integer between 0 and getrandmax(). If you want a

random number between 5 and 15 (inclusive), for example,

use rand(5, 15)

int rand ( void )

int rand ( int $min , int $max )

rand ()

• <?phpecho rand() . "\n";echo rand() . "\n";

echo rand(5, 15);• ?>

round ()

• Returns the rounded value of val to specified precision (number of digits after the decimal point). precision can also be negative or zero (default).

• The rounded value

round ( float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP ]] )

round ()

<?phpecho round(3.4); // 3echo round(3.5); // 4echo round(3.6); // 4echo round(3.6, 0); // 4echo round(1.95583, 2); // 1.96echo round(1241757, -3); // 1242000echo round(5.045, 2); // 5.05echo round(5.055, 2); // 5.06

?>

round ()<?php

echo round(9.5, 0, PHP_ROUND_HALF_UP); // 10echo round(9.5, 0, PHP_ROUND_HALF_DOWN); // 9echo round(9.5, 0, PHP_ROUND_HALF_EVEN); // 10echo round(9.5, 0, PHP_ROUND_HALF_ODD); // 9

echo round(8.5, 0, PHP_ROUND_HALF_UP); // 9echo round(8.5, 0, PHP_ROUND_HALF_DOWN); // 8echo round(8.5, 0, PHP_ROUND_HALF_EVEN); // 8echo round(8.5, 0, PHP_ROUND_HALF_ODD); // 9

?>

max()

• If the first and only parameter is an array, max() returns the

highest value in that array. If at least two parameters are

provided, max()returns the biggest of these values.

 max ( array $values )

 max (  $value1 ,  $value2 [,  $value3... ] )

max()

• max() returns the numerically highest of the parameter values. If multiple

values can be considered of the same size, the one that is listed first will

be returned.

• When max() is given multiple arrays, the longest array is returned. If all

the arrays have the same length, max() will use lexicographic ordering to

find the return value.

• When given a string it will be cast as an integer when comparing.

max()<?php

echo max(1, 3, 5, 6, 7);  // 7echo max(array(2, 4, 5)); // 5

echo max(0, 'hello');     // 0echo max('hello', 0);     // hello

echo max('42', 3); // '42'

echo max(-1, 'hello');    // hello

$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)

$val = max(array(2, 4, 8), array(2, 5, 7)); // array(2, 5, 7)

$val = max('string', array(2, 5, 7), 42);   // array(2, 5, 7)?>

min()

• If the first and only parameter is an array, min() returns the

lowest value in that array. If at least two parameters are

provided, min() returns the smallest of these values.

•  min() returns the numerically lowest of the parameter

values.

 min ( array $values )

 min (  $value1 ,  $value2 [,  $... ] )

min()

• ?php

echo min(2, 3, 1, 6, 7); // 1

echo min(array(2, 4, 5)); // 2

echo min(0, 'hello'); // 0

echo min('hello', 0); // hello

echo min('hello', -1); // -1

?>

str_pad ()

• This functions returns the input string padded on the left, the right, or

both sides to the specified padding length. If the optional

argument pad_string is not supplied, the input is padded with spaces,

otherwise it is padded with characters from pad_string up to the limit.

• Returns the padded string.

string str_pad ( string $input , int $pad_length [, string $pad_string = " " [, int $pad_type =

STR_PAD_RIGHT ]] )

str_pad ()

<?php$input = "Alien";echo str_pad($input, 10); // produces "Alien "echo str_pad($input, 10, "-=", STR_PAD_LEFT); // produces "-=-=-Alien"echo str_pad($input, 10, "_", STR_PAD_BOTH); // produces "__Alien___"echo str_pad($input, 6 , "___"); // produces "Alien_“

?>

wordwrap()

• Wraps a string to a given number of

characters using a string break character.• Returns the given string wrapped at the

specified length.

string wordwrap ( string $str [, int $width = 75 [, string $break = "\n" [, bool $cut = false ]]] )

wordwrap()

<?php$text = "The quick brown fox jumped over the lazy dog.";$newtext = wordwrap($text, 20, "<br />\n");echo $newtext;

?>

Array Functions

Using String As Arrays

• You can acces the individual characters of a strings as if they were

members of an array.

Ex1 :$str = “abcdef”;

echo $str[‘1’] ; // b

Or

for($i =0 ;$i < srtlen($str); $i++)

{

echo $str[$i];

}

array_push()

• array_push () Push one or more elements onto the

end of array

• Returns the new number of elements in the array.

int array_push ( array &$array , $var [, mixed $... ] )

array_push()

<?php

$stack = array("orange", "banana");

array_push($stack, "apple", "raspberry");

print_r($stack);

?>

array_pop()

• array_pop — Pop the element off the end of array

• Returns the last value of array. If array is empty (or is not an

array), NULL will be returned.

 array_pop ( array &$array )

array_pop()

<?php$stack = array("orange", "banana", "apple", "raspberry");

$fruit = array_pop($stack);

print_r($stack);

?>

array_merge()

• array_merge — Merge one or more arrays

• Merges the elements of one or more arrays together so that the values of one are appended to the end of the previous one. It returns the resulting array.

• If the input arrays have the same string keys, then the later value for that key will overwrite the previous one. If, however, the arrays contain numeric

keys, the later value will not overwrite the original value, but will be appended.

• Values in the input array with numeric keys will be renumbered with incrementing keys starting from zero in the result array.

• Returns the resulting array.

array array_merge ( array $array1 [, array $... ] )

array_merge()

<?php

$array1 = array("color" => "red", 2, 4);

$array2 = array("a", "b", "color" => "green", 4);

$result = array_merge($array1, $array2);

print_r ($array1);

print_r ($array2);

print_r($result);

?>

array_rand ()

• array_rand — Pick one or more random entries out of an array

• Picks one or more random entries out of an array, and returns the key (or keys) of the random entries.

• If you are picking only one entry, array_rand() returns the key for a random entry. Otherwise, it returns

an array of keys for the random entries. This is done so that you can pick random keys as well as values

out of the array.

 array_rand ( array $input [, int $num_req = 1 ] )

array_rand ()

<?php

$bmw = array(“X2", “X3", “X4", “X5", “X6");

$rand_keys = array_rand($bmw, 2);

echo $bmw[$rand_keys[0]] . "\n";

echo $bmw[$rand_keys[1]] . "\n";

?

array_replace ()

• array_replace — Replaces elements from passed arrays into the first array

• array_replace() replaces the values of the first array with the same values from all the following arrays. If a key from the first array

exists in the second array, its value will be replaced by the value from the second array. If the key exists in the second array, and not

the first, it will be created in the first array. If a key only exists in the first array, it will be left as is. If several arrays are passed for

replacement, they will be processed in order, the later arrays overwriting the previous values.

• array_replace() is not recursive : it will replace values in the first array by whatever type is in the second array.

• Returns an array, or NULL if an error occurs.

array array_replace ( array $array , array $array1 [, array $... ] )

array_replace () <?php

$base = array("orange", "banana", "apple", "raspberry");

$replacements = array(0 => "pineapple", 4 => "cherry");

$replacements2 = array(0 => "grape");

$basket = array_replace($base, $replacements, $replacements2);

print_r($basket);

?>

range  ()

• range — Create an array containing a range of elements

• Returns an array of elements from start to limit, inclusive.

array range ( mixed $start , mixed $limit [, number $step = 1 ] )

range  () <?php

$numbers = range(0, 12) ;// array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

foreach ($numbers as $num) { echo $num; }

// The step parameter was introduced in 5.0.0

$numbers = range(0, 100, 10) ;// array(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)

foreach ( $numbers as $num) {echo $num; }

// Use of character sequences introduced in 4.1.0

$letters = range('a', 'i'); // array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i');

foreach ($letters as $let) { echo $let; }

$letters = range('c', 'a') // array('c', 'b', 'a');

foreach ($letters as $let) { echo $let; }

?>

shuffle ()

• This function shuffles (randomizes the order of the elements

in) an array.

• Returns TRUE on success or FALSE on failure.

bool shuffle ( array &$array )

shuffle ()

<?php

$numbers = range(1, 20);

shuffle($numbers);

foreach ($numbers as $number) {

echo "$number ";

}

?>

asort  ()

• asort — Sort an array and maintain index association

• This function sorts an array such that array indices maintain their correlation with the array elements

they are associated with. This is used mainly when sorting associative arrays where the actual element

order is significant.

• Returns TRUE on success or FALSE on failure.

bool asort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

asort  ()

<?php

$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

asort($fruits);

foreach ($fruits as $key => $val) {

echo "$key = $val\n";

}

?>

usort  ()

• usort — Sort an array by values using a user-defined comparison function

• This function will sort an array by its values using a user-supplied comparison function. If

the array you wish to sort needs to be sorted by some non-trivial criteria, you should use

this function.

• Returns TRUE on success or FALSE on failure.

bool usort ( array &$array , callable $cmp_function )

usort  () <?php

function cmp($a, $b)

{

if ($a == $b) {

return 0;

}

return ($a < $b) ? -1 : 1;

}

$a = array(3, 2, 5, 6, 1);

usort($a, "cmp");

foreach ($a as $key => $value) {

echo "$key: $value\n";

}

?>

ksort  ()

• Sorts an array by key, maintaining key to data correlations.

This is useful mainly for associative arrays.

• Returns TRUE on success or FALSE on failure.

bool ksort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

ksort  ()

<?php$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");

ksort($fruits);

foreach ($fruits as $key => $val) {

echo "$key = $val\n";

}

?>

array_fill   ()

• Fills an array with num entries of the value of the value parameter,

keys starting at the start_index parameter.

• Returns the filled array.

array array_fill ( int $start_index , int $num , mixed $value )

array_fill   ()

<?php$a = array_fill(5, 6, 'banana');$b = array_fill(-2, 4, 'pear');print_r($a);print_r($b);

?>

empty    ()

• Determine whether a variable is considered to be empty. A

variable is considered empty if it does not exist or if its value

equals FALSE. empty() does not generate a warning if the

variable does not exist.

bool empty (  $var )

empty    () • Returns FALSE if var exists and has a non-empty, non-zero value. Otherwise returns TRUE.

• The following things are considered to be empty:

• "" (an empty string)

• 0 (0 as an integer)

• 0.0 (0 as a float)

• "0" (0 as a string)

• NULL

• FALSE

• array() (an empty array)

• $var; (a variable declared, but without a value)

empty    ()

<?php

$arr = array();

If(empty($arr))

Echo “empty array”;

?>

Transforming String

Transforming String

• If given two arguments, the second should be an array in the

form array('from' => 'to', ...). The return value is

a string where all the occurrences of the array keys have been

replaced by the corresponding values. The longest keys will

be tried first. Once a substring has been replaced, its new

value will not be searched again.

string strtr ( string $str , array $replace_pairs )

Transforming String

<?php

$arr = array("Hello" => "Hi", "world" => "earth");

echo strtr("Hello world",$arr);

?>

Output : Hi earth

Transforming String

• The strtr() If given three arguments, this function returns a

copy of str where all occurrences of each (single-byte)

character in from have been translated to the corresponding

character in to, i.e., every occurrence of $from[$n] has been

replaced with $to[$n], where $n is a valid offset in both

arguments.;

string strtr ( string $str , string $from , string $to )

Transforming String

• <?php

echo strtr("Hilla Warld","ia","eo");

?>

• Output : Hello World

Comparing Strings

Comparing Strings

• You can comparison between strings by more than one method ,the PHP when

comparison it make convert the data type to other if the data type not the same.

• Ex1:

• <?php

If(“123aa” == 123)

{

echo “done”;

}

?>

Comparing Strings

• This comparison is case sensitive.

• Returns < 0 if str1 is less than str2; > 0 if str1 is

greater than str2, and 0 if they are equal.

int strcmp ( string $str1 , string $str2 )

Comparing Strings

• <?php

echo strcmp("Hello world!","Hello

world!");

?>

• Output : 0

Comparing Strings

• Binary safe case-insensitive string comparison.

• Returns < 0 if str1 is less than str2; > 0 if str1 is

greater than str2, and 0 if they are equal.

int strcasecmp ( string $str1 , string $str2 )

Comparing Strings

<?php

$var1 = "Hello";

$var2 = "hello";

if (strcasecmp($var1, $var2) == 0) {

echo '$var1 is equal to $var2 in a case-insensitive string comparison';

}

?>

Comparing Strings-example<?php

$str = "Ali";

if(strcmp($str , "ali") == 0)

{

//we won't get here , becuse of case sensitivity

}

if(strcasecmp($str , "ali") == 0)

{

we well get here becuse strcasecmp() is case-insensitive

}

?>

Comparing Strings-example

<?php$st1 = “abcd1234”;$st2 = “abcd5678”;echo strncasecmp ($st1,$st2,4);

?>

Searching Strings

Searching Strings

• Find the numeric position of the first occurrence

of needle in the haystack string.

• Returns the position of where the needle exists relative to

the beginning of the haystack string (independent of

offset). Also note that string positions start at 0, and not 1.

• Returns FALSE if the needle was not found.

int strpos ( string $haystack ,  $needle [, int $offset = 0 ] )

Searching Strings

• <?php

echo strpos("Hello world!","wo");

?>

• Output : 6

Searching Strings-Example

<?php$str =“abcdef”;$se_str = “abc”;If(strpos($str,$se_srt) !== false){ echo “found”;}

?>

Searching Strings-Example

<?php$str ='1234567';$se_str = '123';echo strpos($str,$se_str,1); //false

?>

Searching Strings-Example

<?php$str ='123456';$se_str = ‘34';echo strtr($str,$se_str,1); // 3456?>

String Replace

• This function returns a string or an array with all occurrences

of search in subject replaced with the given replace value.

• This function returns a string or an array with all occurrences of search in subject (ignoring case) replaced with the given replace value.

• eplaces a copy of string delimited by the start and

(optionally) length parameters with the string given inreplacement.

str_replace ( $search ,  $replace ,  $subject [, int &$count ] )

str_ireplace (  $search ,  $replace ,  $subject [, int &$count ] )

substr_replace (  $string ,  $replacement ,  $start [,  $length ] )

String Replace-example

<?phpecho str_raplace(“Mr”,”Welcom”,”Mr Ali”);echo str_iraplace(“Mr”,”Welcom”,”Mr Ali”);

?>

String Replace -exmple

<?php$a = 0;echo str_raplace(“a”,”b”,”a1a1a1”,$a);echo $a // 3

?>

String Replace -exmple

<?phpecho substr_raplace(“welecom ali ”,”hi”,7);echo substr_raplace(“welecom my brother ali

”,”mr”,9,10);

?>

String Replace -exmple

<?php$str = “123456789”;echo substr($str,0,3);//123echo substr($str,1,1);//2echo substr($str,-2);//89echo substr($str,-2,1);//8

?>

str_replace()

<?phpecho str_replace("world","Peter","Hello world!");?>

str_replace()

<?php$arr = array("blue","red","green","yellow");print_r(str_replace("red","pink",$arr,$i));echo "Replacements: $i";

?>

 str_replace()

<?php$arr = array("blue","red","green","yellow");print_r(str_replace("red","pink",$arr,$i));echo "Replacements: $i";

?>

Recommended