Sie sind auf Seite 1von 35

PHP (Lekcija 3)

Miladin Stefanović
miladin@kg.ac.rs
PHP
 3 lekcija
 Nizovi
 Fajlovi
 if (isset($_POST['submit'])) {
    echo "<table width = 90% border =
Primer '1' cellspacing = '5' cellpadding = '0'>";
    // preuzmi promenljive
    $rows = $_POST['rows'];
    $columns = $_POST['columns'];
 <html>     // kreiranje vrsta
<head></head>     for ($r = 1; $r <= $rows; $r++) {
<body>         echo "<tr>";
<form method="post"         // kreiranje kolona
action="<?php echo         for ($c = 1; $c <= $columns;$c++)
$_SERVER['PHP_SELF']; ? {
            echo "<td>&nbsp;</td> ";
>">         }     echo "</tr> ";
Unesi broj vrsta<input     }
name="rows" type="text"     echo "</table> ";
size="4"> i kolona<input }
name="columns" type="text" ?>
</body>
size="4"> <input type="submit" </html>
name="submit" value=“Napravi
tabelu">
</form>
Nizovi 1 - print_r
 <?php

// definisanje niza
$pizzaDodatci = array(‘kecap', 'paradajz', 'sir',
'pavlaka', 'sunka', 'kobasica');
print_r($pizzaDodatci);

?>
Array ( [0] => kecap [1] => paradajz [2] => sir [3]
=> pavlaka [4] => sunka [5] => kobasica)
Nizovi 2 - print_r
<?php
// definisanje niza
$voce = array('crvena' => 'jabuka', 'zuta' => 'banana',
'plava' => 'sljiva', 'zeleno' => 'grozdje');
print_r($voce);

 ?> Array ( [crvena] => jabuka [zuta] => banana


[plava] => sljiva [zeleno] => grozdje )
Nizovi 3 - array_push
<?php
// definisanje niza
$hrana = array('spageti', 'piza', 'makaroni');
// dodavanja clanova na kraj
array_push($hrana, 'lazanje');
print_r($hrana);
?>

 Array ( [0] => spageti [1] => piza [2] => makaroni
[3] => lazanje )
Nizovi 4 - array_pop
<?php
// definisanje niza
$hrana = array('spageti', 'piza', 'makaroni');
// brisanje poslednjeg clana
array_pop($hrana);
print_r($hrana);
?>

 Array ( [0] => spageti [1] => piza )


Nizovi 5 - array_shift
<?php
// definisanje niza
$hrana = array('spageti', 'piza', 'makaroni');
// skidanje elementa za pocetka
array_shift($hrana);
print_r($hrana);
?>

 Array ( [0] => piza [1] => makaroni )


Nizovi 6 - array_unshift
<?php
// definisanje niza
$hrana = array('spageti', 'piza', 'makaroni');
// skidanje elementa za pocetka
array_unshift($hrana, 'lazanje');
print_r($hrana);
?>

 Array ( [0] => lazanje [1] => spageti [2] => piza [3]
=> makaroni )
Nizovi 7 - explode
<?php
// definisanje stringa
$str = 'crveno, plavo, zeleno, zuto';
// razbijanje na pojedinacne delove
$colors = explode(', ', $str);
print_r($colors);
?>

 Array ( [0] => crveno [1] => plavo [2] => zeleno [3]
=> zuto)
Nizovi 8 - explode
<?php
// definisanje niza
$str = 'crveno plavo zeleno zuto';
// razbijanje na pojedinacne delove
$colors = explode(' ', $str);
print_r($colors);
?>

 Array ( [0] => crveno [1] => plavo [2] => zeleno [3]
=> zuto )
Nizovi 9 - implode
<?php
// definisan niz
$colors = array ('crveno', 'plavo', 'zeleno', 'zuto');
// povezati koriscenjem veznika i
$str = implode(' i ', $colors);
print $str;
?>

 crveno i plavo i zeleno i zuto


Nizovi 10 – sort & rsort
<?php
// definisanje niza
$hrana = array('spageti', 'piza', 'makaroni');
// uredjivanje niza po alfabetu
sort($hrana);
print_r($hrana);
print "<br />";
// uredjivanje niza po opadajucim vrednostima
rsort($hrana);
print_r($hrana);
?>

Array ( [0] => makaroni [1] => piza [2] => spageti )
Array ( [0] => spageti [1] => piza [2] => makaroni )
Nizovi 11
<html>
<head></head>
<body>
Moje omiljene grupe su:
<ul>
<?php
// defnisanje niza
$artists = array('Metallica', 'Nirvana', 'Doors', 'Guns n Roses');
// petlja i stampa
for ($x = 0; $x < sizeof($artists); $x++) {
echo '<li>'.$artists[$x];
}
?>
</ul>
</body>
</html>
Nizovi 12
<html> <?php
<head></head>
    }
<body>
<?php else {
// forma ili prikaz     if (is_array($_POST['artist'])) {
if (!isset($_POST['submit'])) {         echo ‘Izabran: <br />';
    // prikazivanje forme  
        foreach ($_POST['artist'] as $a) {
?>
           echo "<i>$a</i><br />";
    <form action="<?php echo             }
$_SERVER['PHP_SELF']; ?>" method="POST">         }
    else {
    <input type="checkbox" name="artist[]"         echo 'Nista nije selektovano';
value="Metallica">Metallica     }
    <input type="checkbox" name="artist[]"
value="Nirvana">Nirvana }
    <input type="checkbox" name="artist[]" ?>
value="Doors">Doors </body>
   
    </form> </html>
Čitanje fajlova
 <?php
// podesavanje putanje
$file = '/usr/local/stuff/that/should/be/elsewhere/recipes/omelette.txt' or
die(‘Fajl ne moze da se otvori!');
// otvranje fajla
$fh = fopen($file, 'r') or die(' Fajl ne moze da se otvori!');
// citanje sadryaja fajla
$data = fread($fh, filesize($file)) or die(‘Fajl ne moze da se procita');
// zatvaranje fajla
fclose($fh);
// stampanje sadržaja fajla
echo $data;
?>
Otvranje fajla - fopen
 'r' – otvaranje fajla u modu za čitanje
 'w' – otvaranje fajla u modu za pisanje, pri
čemu se unišatva dosadašnji sadržaj
 'a' – otvaranja fajla u proširenom modu, čuva
sadržaj fajla
filesize()
 filesize() - vraća veličinu fajla u bajtovima.
foreach()
 <?php
// podešavanje fajla za čitanje
$file =
'/usr/local/stuff/that/should/be/elsewhere/recipes/omelette.txt' or
die('Fajl ne moze da se procita!');
// prebacivanje fajla u niz
$data = file($file) or die(' Fajl ne moze da se procita!');
// štampanje svake linije
foreach ($data as $line) {
     echo $line;
}
?>
file()
 file() – otvara fajl, čita, prebacuje u niz i
zatvra fajl. Svaki element niya odgovara
jednoj liniji fajla.
foreach()
 foreach() - štampa svaki element niza.
file_get_contents
 <?php
// podešavanje fajla za čitanje
$file =
'/usr/local/stuff/that/should/be/elsewhere/recipes/omelette.t
xt' ;
// prebacivanje fajla u string
$data = file_get_contents($file) or die('Fajl ne može da se
pročita!');
// štampanje sadržaja
echo $data;
?>
fwrite
 <?php
// podešavanje fajla za upisivanje
$file = '/tmp/dump.txt';
// open file
$fh = fopen($file, 'w') or die(‘Greška u otvaranju!');
// upisivanje u fajl
fwrite($fh, “Upisivanje u fajl") or die(‘Greška u pisanju');
// zatvaranje fajla
fclose($fh);
?>
file_put_contents
 <?php

// priprema fajla
$filename = '/tmp/dump.txt';
// upisivanje u fajl
file_put_contents($filename, “Upis u fajl") or
die(‘Greška u pisanju');

?>
file_exists
 <html>  <?php
<head> }
</head> // procesiranje forme
<body> else {
    // proveri da li fajl postoji
<?php     if (file_exists($_POST['file'])) {
        echo 'Fajl postoji!';
if (!isset($_POST['file'])) {         }
?>     else {
        echo 'Fajl ne postoji!';
    <form action="<?php echo     }
$_SERVER['PHP_SELF']; ?>" }
method="post"> ?>
    Unesi putanju do fajla<input
type="text" name="file"> </body>
    </form> </html>
Ostale funkcije….
 is_dir() – vraća Boolean koji indicira da je navedena putanja direktorijum
 is_file() - vraća Boolean koji indicira da je navedeni fajl regularan fajl
 is_link() - vraća Boolean koji indicira da je navedeni fajl simbolički link
 is_executable() - vraća Boolean koji indicira da je navedeni fajl exe
 is_readable()- vraća Boolean koji indicira da je navedeni fajl moguće čitati
 is_writable()- vraća Boolean koji indicira da je navedeni fajl moguć za pisanje
 filesize() – vraća veličinu fajla
 filemtime() – vraća poslednje vreme modifikovanja fajla
 filamtime() - vraća poslednje vreme pristupa fajlu
 fileowner() – vraća info o vlasniku fajla
 filegroup() – vraća grupu gde pripada fajl
 fileperms() – vraća dozvole vezane za fajl
 filetype() – vraća tip fajla
Primer
 <html>
<head>
</head>
<body>
<?php
if (!isset($_POST['file'])) { ?>
    <form action="<?php echo
$_SERVER['PHP_SELF']; ?>" method="post">
    Enter file path <input type="text" name="file">
    </form>
Nastavak a
 <?php
}
// else process form input
else {
    echo 'File name: <b>'.$_POST['file']  .'</b><br />';
    if (file_exists($_POST['file'])) {
        // print file size
        echo 'File size: '.filesize($_POST['file']).' bytes<br />';
        // print file owner
        echo 'File owner: '.fileowner($_POST['file']).'<br />';
        // print file group
        echo 'File group: '.filegroup($_POST['file']).'<br />';
        // print file permissions
        echo 'File permissions: '.fileperms($_POST['file']).'<br />';
        // print file type
        echo 'File type: '.filetype($_POST['file']).'<br />';
        // print file last access time
        echo 'File last accessed on: '.date('Y-m-d', fileatime($_POST['file'])).'<br />';
Nastavak b
  // print file last modification time
        echo 'File last modified on: '.date('Y-m-d', filemtime($_POST['file'])).'<br />';
        // is it a directory?
        if (is_dir($_POST['file'])) {
            echo 'File is a directory <br />';
        }
        // is it a file?
        if (is_file($_POST['file'])) {
            echo 'File is a regular file <br />';
        }
        // is it a link?
        if (is_link($_POST['file'])) {
            echo 'File is a symbolic link <br />';
        }
       
Nastavak c
  // is it executable?
        if (is_executable($_POST['file'])) {
            echo 'File is executable <br />';
        }
        // is it readable?
        if (is_readable($_POST['file'])) {
            echo 'File is readable <br />';
        }
        // is it writable?
        if (is_writable($_POST['file'])) {
            echo 'File is writable <br />';
        }
    }
Nastavak d
 else {  File name:
        echo 'Fajl ne postoji! <br />'; /usr/local/apache/logs/error_log
    }  File size: 53898 bytes
}  File owner: 0
?>
 File group: 0
</body>  File permissions: 33188
</html>  File type: file
 File last accessed on: 2004-05-26
 File last modified on: 2004-06-20
 File is a regular file
 File is readable
Primer 2
 <html>  <h2><?php echo $title; ?></h2>
<head></head>
<body> <?php
/* štampanje ostatka fajla*/
<?php foreach ($data as $line) {
// prebaci fajl u niz     echo nl2br($line);
$data = }
file('/usr/local/stuff/that/should/be/el ?>
sewhere/omelette.txt') or die('Could
not read file!');  nl2br ubacuje <br>
/* prva linija je naslov*/
$title = $data[0];
// skini prvi član niza
array_shift($data);
?>
Primer 3 - header
 <html>
<head>
<title><?php echo $page['title'];?></title>
</head>
<body>
<!-- top menu bar -->
<table width="90%" border="0" cellspacing="5" cellpadding="5">
<tr>
<td><a href="#">Home</a></td>
<td><a href="#">Site Map</a></td>
<td><a href="#">Search</a></td>
<td><a href="#">Help</a></td>
</tr>
</table>
<!-- header ends -->
Primer 3 - footer
 <!-- footer begins -->
<br />
<center>Your usage of this site is subject to its
published <a href="tac.html">terms and
conditions</a>. Data is copyright Big Company
Inc, 1995-<?php echo date("Y", mktime()); ?
></center>
</body>
</html>
Primer 3 - fajl
 <?php
$page = array();
$page['title'] = 'Product Catalog';
include('header.php');
?>
<!-- HTML content here -->
<?php
include('footer.php');
?>

Das könnte Ihnen auch gefallen