Łańcuchy znaków
Funkcje [12] https://ideone.com/4zMvWM:
http://php.net/manual/en/ref.strings.php,
<?php
$text = ' Napisy nazywamy łańcuchami znaków (ang. string) .<br /> ';
echo $text;
print strlen($text); // długość
echo '<br />';
$text = trim($text);
echo $text;echo strlen($text); // trim obcina spacje?
echo '<br />';
echo strtoupper($text); // duże znaki
echo strtolower($text); // małe
$text = str_replace('napis', 'Napis', $text); // zamiana
echo $text; //
print substr($text, 2, 6); // fragment (substring)
var_dump(strpos($text, 'am')); // pierwsze wysątąpienie
var_dump(strpos($text, 'łań')); // jeśli dobrz skonfigurowane - uwzględnia utf8
var_dump(strpos($text, 'Droga')); // false
Wstawianie zmiennych [13] https://ideone.com/0y5OD9:
<?php
$name = 'Jan Kowalski';
print "Łańcuchy znaków w cudzysłowach (\")
ze zmiennymi są przetwarzane
- nazwy zmiennych astępowane ich wartością:
$name<br />";
print 'Łańcuchy apostrofach (\')- nie: $name<br />';
print 'Backsash (\\) = znak "ucieczki" (escape)';
Konkatenacja [14] https://ideone.com/OrcSaJ:
<?php
$nazwisko = 'Kowalski';
$imie = 'Jan';
print $nazwisko.' '.$imie; // . = znak konkatenacji
Tablice – LISTY i SŁOWNIKI
http://php.net/manual/en/book.array.php
[15] https://ideone.com/91PVqE:
<?php
$lista1 = []; // pusta lista
$lista2 = array(); // to samo
$imiona = ['Robert', 'Adam', 'Magda'];
var_dump($imiona);
var_dump(array('Robert', 'Adam', 'Magda'));
$osoba1 = [ // słownik (mapa, tablica asocjacyjna)
'name' => 'Jan Kowalski', 'plec' => 'M'
];
var_dump($osoba1);
var_dump(array( 'name' => 'Magda Kowalska', 'plec' => 'K'));
$lista1=$imiona;
$lista1[1]=’Adaś’;
var_dump($lista1);
// modyfikowana (not immutable), zmieniono 2-gi (!) element
var_dump($imiona); // $imiona bez zmian
Złożone struktury (16) https://ideone.com/m9ayT1:
<?php
$books = [
[ 'title' => 'Pan Tadeusz',
'authors' => 'Adam Mickiewicz'
],
[ 'title' => 'Przedwiośnie',
'authors' => 'Stefan Żeromski'
]
];
var_dump($books);
print $books[1]['title'];
echo '<br />';
print_r($books); // wypisuje strukturę - bez formatowania (jak var_dump)
$books=array_merge(['from' => 'Biblioteczka'],$books); // łączenie struktur
var_dump($books);
$json = json_encode($books); // zamienia na łańcuch znaków w standarzie Json
var_dump($json); // zwróć uwagę na sposób kodowania polskich liter
Zmiany tablic
[17] https://ideone.com/7YHAH3:
<?php
$book = [ 'title' => 'Treny',
'authors' => 'Jan Kochanowski'
]; // wstawianie
$books=[];
var_dump(empty($books)); // funkcja empty - pusty
$books[] = $book; // dodawanie
$books[] = $book;
$books[1]['title'] = 'TRENY';
var_dump($books);
$ile=count($books);
print $ile;
unset($books[$ile-1]['title']); // usun wartość (nie element)
var_dump($books);
var_dump(isset($books[$ile-1]['title']));
// isset - funkcja - czy zdefiniowana wartość
Przeszukiwanie i porządkowanie tabel
http://php.net/manual/en/array.sorting.php,
Funkcja | Sortuj według klucza / wartości | Słownik | Kolejność |
---|---|---|---|
sort | Value | No | Lowtohigh |
rsort | Value | No | Hightolow |
asort | Value | Yes | Lowtohigh |
arsort | Value | Yes | Hightolow |
ksort | Key | Yes | Lowtohigh |
krsort | Key | Yes | Hightolow |
[18] https://ideone.com/RweFih
<?php
$imiona = ['Robert', 'Adam', 'Magda'];
var_dump(in_array('Adam', $imiona)); // true
var_dump(array_search('Adam', $imiona)); // 1
sort($imiona); // sortuje w tym samym miejscu (przek. przez referencje)
var_dump($imiona); // posortowany
$books = [
[ 'title' => 'Pan Tadeusz',
'authors' => 'Adam Mickiewicz'
],
[ 'title' => 'Przedwiośnie',
'authors' => 'Stefan Żeromski'
]
];
arsort($books); // k - klucz, r - rewersm, a - wartosc slownika
var_dump($books);