Strings and Arrays. String Is a sequence of characters. Example: “hello”, “how are you?”,...

38
Strings and Arrays

Transcript of Strings and Arrays. String Is a sequence of characters. Example: “hello”, “how are you?”,...

Strings and Arrays

String

Is a sequence of characters. Example: “hello” , “how are

you?” , “123”,and “!@#$%” are all valid string values.

Creating and Accessing a String

$myString = ‘hello‘; $myString = “hello”;

<?php $myString='hello there!';

echo "Hello $myString";

echo 'Hello $myString';

?>

{ }

use the curly brackets to distinguish the variable name from the rest of the string

$myFavorite=”cat”;echo “My favorite animals are

{$myFavorite}s”;

Accessing Characters within a String$myString=”hello world”;echo $myString[0]; // displays h

String Functions

strlen() - Calculating length of array<?php $name = “Simon Stobart”; $stringlength = strlen($name); echo $stringlength;?>

String Functions

str_word_count() - returns the number of words in a string

echo str_word_count(“Hello There”); // returns 2

String FunctionsSubstr() - extract sequence of

characters in a stringThe string to extract the characters fromThe position to start extracting the characters. If

you use a negative number, substr() counts backward from the end of the string

The number of characters to extract. If you use a negative number, substr() misses that many characters from the end of the string instead. This parameter is optional; if left out, substr()extracts

from the start position to the end of the string

$myString = “Hello, world!”;

echo substr( $myString, 0, 5 ) . “ < br/ > ”; // Displays ‘Hello’

echo substr( $myString, 7 ) . “ < br/ > ”; // Displays ‘world!’

echo substr( $myString, -1 ) . “ < br/ > ”; // Displays ‘!’

echo substr( $myString, -5, -1 ) . “ < br/ > ”; // Displays ‘orld’

String Functions

strpos() - find out exactly where a string of text occurs within another string

$myString = “Hello, world!”;

echo strpos( $myString, “wor” ); // Displays ‘7’

echo strpos( $myString, “xyz” ); // Displays ‘’ (false)

strrpos() - finds the last match in the string, rather than the first

$myString = “Hello, world!”;

echo strpos( $myString, “o” ) . “ < br / > ”; // Displays ‘4’

echo strrpos( $myString, “o” ) . “ < br / > ”; // Displays ‘8’

String Functions

substr_count() - returns the number of times the text was found in the string

$myString = “I say, nay, nay, and thrice nay!”;

echo substr_count( $myString, “nay” ); // Displays ‘3’

String Functions

strpbrk() - returns the

portion of the string from the first matched character to the end of the string. If none of the characters in

the set are found in the string, strpbrk() returns false .

$myString = “Hello, world!”;

echo strpbrk( $myString, “abcdef” ); // Displays ‘ello, world!’

echo strpbrk( $myString, “xyz” ); // Displays ‘’ (false)

$username = “[email protected]”;

if ( strpbrk( $username, “@!” ) ) echo “@ and ! are not allowed in usernames”;

String Functions

strstr(searchstring, lookingstring) find a specific part of a string inside

another string, returns the remainder of the input string

<?php $name = “Simon Stowart”; $strOutput =strstr($name,”St”);

echo “The result is”.$strOutput;?>

String Functions

str_replace(lookingforstring,replatestring,searchstring)Replace parts of the string with

another string

<?php

$strSentence="The use of italics can be useful to highlight certain words. ";

$strOutput = str_replace("italics","<i>italics</i>",$strSentence);

echo $strSentence ."<br>";

echo "The output now looks like: ".$strOutput;?>

?>

String Functions

substr_replace() replaces a specified portion of the target string with another string

$myString = “It was the best of times, it was the worst of times,”;

// Displays “It was the bananas”

echo substr_replace( $myString, “bananas”, 11 ) . “ < br/ > ”;

String Functions

strrev(string)Returns the string in reverse order<?php $name = “Simon Stowart”; $strOutput = strrev($name); echo $name. “backwards is ”.

$strOutput;?>

String Functions

strtoupper(), strtolower(),ucfirst(),ucwords();Changes the case of string

<?php

echo strtoupper("simon stowart")."<br>".strtolower("SIMON SOTWART");

echo "<br>".ucfirst("simon stowart")."<br>".ucwords("simon stowart");?>

?>

Formatting Functions

printf() trim() removes white space from

the beginning and end of a stringltrim() removes white space only

from the beginning of a stringrtrim() removes white space only

from the end of a string

Array

SyntaxtheArray =

array(array1,array2… ,arrayN);$arrColors =

array(“Red”,”Blue”,”Yellow”,”White”);

<?php$arrColors =

array(“Red”,”Blue”,”Yellow”,”White”);

for ($ctr = 0; $ctr < 5; $ctr++)

echo “<p>”.$arrColors[$ctr].”<p>”;

?>

Array

Accessing array elementsIndex or key

<?php

$arrColors = array(0=>"Red",1=>"Blue",3=>"Yellow",5=>"White");

for ($ctr = 0; $ctr < 6; $ctr++)

echo "<p>".$arrColors[$ctr]."<p>";

?>

foreach(array as value) statement<?php

$arrColors = array(0=>"Red",1=>"Blue",3=>"Yellow",5=>"White");$ctr =0;foreach ($arrColors as $strColor){

echo "<p>".$ctr ." " .$strColor."<p>"; $ctr++; }?>

Arrays

Nonmerical keys<?php

$arrColors = array("red"=>"Red","blue"=>"Blue","yello"=>"Yellow","white"=>"White");

foreach ($arrColors as $strkey => $strColor)

echo "<p>".$strkey ." : " .$strColor."<p>";

?>

Multi-dimensional array<?php

$arrCars = array (array("Fords","Mazda","Toyota"),

array("Blue","Red","Green"),

array(1,2,4));

for ($ctr = 0; $ctr <3; $ctr++){

$makar = $arrCars[0][$ctr];

$color = $arrCars[1][$ctr];

$qty = $arrCars[2][$ctr];

echo "<p> Maka: ".$maker." Color: ".$color. " Quantity: ".$qty ."</p>";

}

?>

Counting array elements

$size = count(array)

Creating Stack

array_pop(array)array_push(array,element)

Example

<?php$arrColor = array("Red","Blue");print_r($arrColor);

$strColor = array_pop($arrColor);echo "<br> Deleted color: ".$strColor."<br>";print_r($arrColor);array_push($arrColor,"Green");echo "<br>";print_r($arrColor);

?>

Explode

Array = explode(separator, string);the first string indicating the what

characters will be use to search the string to separate it into individual array elements

The second parameter is the string itself

<?php$pizza = "piece1 piece2 piece3 piece4 piece5

piece6";$pieces = explode(" ", $pizza);print_r($pieces);

?>

Implode

String = implode(separator, array);

The first string indicating what characters it will use to separate each element and the second is an array

<?php

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

echo $comma_separated; // lastname,email,phone

?>

Using arrays in forms

<?php$arrNames = array("Simon","Liz","Gemma","Hayley");$strNames = implode("|",$arrNames);

?>

<html><body><form method = "post" action="display.php"><input type = "hidden" name="strNames" value =" <?php echo $strNames; ?>"><br><br><input type = "text" name="names" maxlength="50" ><input type = "submit" name="submit" value="click"></form></body></html>

<?phpif(isset($_POST['submit'])){

echo "<p> The array contains: </p>";$strNames = $_POST['strNames']."|".$_POST['names'];$arrNames = explode("|",$strNames);foreach($arrNames as $key => $value)

echo "<p>[". $key ."]".$value ."</p>";}

?>