implode

februari 2nd, 2013
string implode (string $glue, array $pieces)

Funktionen implode kan man säga är motsatsen till explode. Med hjälp av denna funktion kan man skapa en sträng från ett fält eller en array där alla värden är separerade med valfri sträng.

Exempel

$cars = array('Volvo', 'Saab', 'Toyota');
echo implode(', ', $cars); // Skriver ut Volvo, Saab, Toyota

array_key_exists

februari 2nd, 2013
bool array_key_exists (mixed $key, array $search)

Funktionen array_key_exists används för att kontrollera om ett specifikt index-värde finns i ett fält eller en array och returnerar ett booleskt värde som talar om resultatet. Funktionen returnerar true även om värdet på ett index skulle vara null.

Exempel

$myArray = array('bil' => 'Ferrari', 'cykel' => 'BMX');
if (array_key_exists('bil', $myArray)) {
    echo "Bilen finns!";
}
if (array_key_exists('hus', $myArray)) {
    echo "Huset finns inte!";
}

trim

januari 28th, 2013
string trim ( string $str [, string $charlist ] )

Funktionen trim används när man vill bli av med whitespace-tecken såsom mellanslag i början och slutet av en sträng. De tecken som plockas bort är följande:

  • ” ” (ASCII 32 (0x20)), ett vanligt mellanslag
  • ”t” (ASCII 9 (0x09)), en tabb
  • ”n” (ASCII 10 (0x0A)), radmatning (line feed)
  • ”r” (ASCII 13 (0x0D)), vagnretur (carriage return
  • ”” (ASCII 0 (0x00)), så kallad NUL-byte.
  • ”x0B” (ASCII 11 (0x0B)), en vertikal tabb

Genom att ange andra tecken som andra argument till funktionen så kan man trimma vilka tecken man vill från sin ursprungliga sträng.

Exempel

$str1 = "  hej ";
echo trim($str1); // Skriver ut "hej"

$str2 = "...hej!";
echo trim($str2, ".!"); // Skriver ut "hej"

isset

januari 26th, 2013
bool isset ( mixed $var [, mixed $... ] )

Det händer ofta att man vill veta om en variabel existerar eller inte. Då kan man använda sig av den smidiga lilla funktionen isset vilken helt enkelt bara returnerar sant/falskt beroende på om variabeln eller variablerna har deklarerats eller inte.

Ifall man anger fler än en variabel (separerade med kommatecken) så kommer funktionen att returnera sant endast om alla variabler existerar.

Exempel

$a = "";
if (isset($a)) {
    echo "Variabeln a finns!";
}
if (isset($b)) {
    echo "Variabeln b finns inte!";
}
$b = "12";
if (isset($a, $b)) {
    echo "Nu finns både a och b!";
}

strpos

januari 25th, 2013
int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

Funktionen strpos används för att söka efter en sträng i en annan. Ifall den eftersökta strängen hittas så returneras positionen där denna börjar, annars returneras false. Funktionen kan också returnera ett värde som värderas som false och därför måste operatorn === användas istället för ==. Man kan också ange ett positivt heltalsvärde som offset ifall man inte vill att funktionen ska börja söka från början av strängen.

Exempel

$oranges = "apelsiner";
$pears = "päron";
$apples_and_oranges = "äpplen och apelsiner";
echo strpos($apples_and_oranges, $oranges); // Skriver ut 11;
if (strpos($apples_and_oranges, $pears) === false) {
    echo "Det finns inga päron";
}

strtolower

januari 19th, 2013
string strtolower ( string $str )

Funktionen strtolower används för att göra om en sträng till att innehålla enbart gemener, det vill säga små bokstäver. Funktionen är beroende av vilket som är det lokala språket på servern. Är strängen på ett annat språk än engelska så bör därför normalt sett multibyte-varianten mb_strtolower användas istället.

Exempel

$str = "I AM the best!";
$str = strtolower($str);
echo $str; // Skriver ut 'i am the best'

instanceof

januari 19th, 2013

Inom objektorienterad programmering så är det ofta väldigt användbart att kunna ta reda på om en variabel är en instans utav en given klass, i synnerhet när det handlar om validering och arv. Inom PHP kan man göra detta mycket smidigt genom operatorn instanceof vilken helt enkelt bara returnerar en boolean.

Exempel

class House
{
}

class SmallHouse extends House
{
}

$a = new House;
$b = new SmallHouse;

var_dump($a instanceof SmallHouse); // Skriver ut bool(false)
var_dump($b instanceof SmallHouse); // Skriver ut bool(true)
var_dump($b instanceof House);      // Skriver ut bool(true)

explode

januari 15th, 2013
array explode ( string $delimiter , string $string [, int $limit ] )

Explode är en mycket användbar funktion som tillkom i PHP 4 och som delar upp en sträng i en array baserat på en substräng.

Exempel

$str = "jul,tomte,snö,presenter";
$arr = explode(",", $str);
echo $arr[1]; // Skriver ut tomte

Om man bara behöver en del av strängen så kan man ange det maximala antalet element som ska returneras med hjälp av ett positivt eller negativt heltal (anger man 0 så kommer det att behandlas som 1). Negativa värden accepteras från och med PHP 5.1.0. Om ett negativt värde anges kommer detta antal element att uteslutas med början från slutet.

Exempel

$str = "jul,tomte,snö,presenter,,,,,,,";
$arr = explode(",", $str, 4);
echo count($arr); // Skriver ut 4

is_int

juli 8th, 2012
bool is_int ( mixed $var )

Funktionen is_int används för att ta reda på om en variabel är ett heltal (integer på engelska) eller inte. Funktionen returnerar ett värde av typen boolean, alltså true (sant) eller false (falskt).

Notera att is_int returnerar alltid falskt för en sträng oavsett om den är numerisk eller inte. Om du vill kunna använda denna funktion för exempelvis ett värde från ett formulär måste du omvandla variabeln eller använda is_numeric istället.

Maxvärdet för argumentet i funktionen är beroende av ifall din miljö kör med 32 eller 64 bitar.

Exempel

// Skriver ut: bool(true)
var_dump(is_int(5));

// Skriver ut: bool(false)
var_dump(is_int("5"));

// Skriver ut: bool(false)
var_dump(is_int(5.5));

intval

juli 8th, 2012
int intval ( mixed $var [, int $base = 10 ] )

Intval är en ganska självförklarande funktion som helt enkelt returnerar heltalsvärdet av en variabel. Utan angivet värde så används 10 som bas, det vill säga vårt vanliga talsystem, men man kan också ange 2, 4 eller 75 som bas om man så önskar. Om basen ska ha någon effekt så måste man skicka in värdet som en sträng till funktionen.

Intval kan inte användas på objekt då det returnerar 1 samt resulterar i ett fel av typen E_NOTICE.

Om funktionen inte kan avgöra något heltalsvärde så returneras 0. Så är fallet för en tom array, tal som är större än maxvärdet för ett heltal i PHP samt de flesta strängar även om det i det senare fallet beror på vilka tecken som strängen inleds med. En array med värden returnerar alltid 1.

Några exempel

// Skriver ut: 70
echo intval(70)

// Skriver ut: 7
echo intval(7.4)

// Skriver ut: 22
echo intval('022')

// Skriver ut 1
echo intval(array('ett', 'två'));

// Skriver ut 7
echo intval('111', 2);