Jak Začít?

Máš v počítači zápisky z přednášek
nebo jiné materiály ze školy?

Nahraj je na studentino.cz a získej
4 Kč za každý materiál
a 50 Kč za registraci!




Jazyk PHP - pokračování

PDF
Stáhnout kompletní materiál zdarma (1.56 MB)

Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.

 Třídy a metody mohou být final

Třídy a metody mohou být fina

 Třída final nemůže být rozšířena

Třída final nemůže být rozšířen

 Metoda final nemůže být přetížena v potomkovi

Metoda final nemůže být přetížena v potomkov

Final

Fina

<?php

final class A {

function delejNeco() {}

}

class B extends A {} // fatal error

class C {

class C

final function foo() {}
function bar() {}

}

class D extends C { function bar() {} } // pretizeni metody bar 
je OKclass E extends C { function foo() {} } // chyba!!!?> 

kuk final.php

Konstanty tříd

Konstanty tří

 Konstanty spojené s danou třídou

Konstanty spojené s danou třído

<?php
class A {

const HOST = "localhost";
const USER = "Franta";

}

class B {

const HOST = "faraon.felk.cvut.cz";
const USER = "xklima";

}

echo A::HOST;echo B::HOST;?> 

kuk const.php

Magick

Magic é konstanty

é konstant

 Sada 

Sada kontant

kontan , které ale mění svojí hodnotu podle 

, které ale mění svojí hodnotu podle

kontextu

kontext

__LINE__

__LINE_
__FILE__

__FILE_
__DIR__

__DIR_
__FUNCTION__

__FUNCTION_
__CLASS__

__CLASS_
__METHOD__

__METHOD_
__NAMESPACE__

__NAMESPACE_

Jmenné prostory

Jmenné prostor

 jednoznačné pojmenování tříd

jednoznačné pojmenování tří

– zabraňuje konfliktům jmen

zabraňuje konfliktům jme

 Od PHP 5.3.0

Od PHP 5.3.

 klíčové slovo 

klíčové slovo namespace

namespac

 v jednom souboru může být definováno více 

v jednom souboru může být definováno více
jmenných prostorů (ne jako v Javě)

jmenných prostorů (ne jako v Javě

 namespace

namespac se vztahuje na 

se vztahuje na

– konstanty

konstant

– funkce

funkc

– třídy

tříd

Ukázka

Ukázk

<?php// nas CVUT namespace
namespace Cz\Cvut\Fel\Dcgi\Php;

class Person {

protected $name;
protected $surname;

public function __construct($name, $surname) {

$this->name = $name;
$this->suruname = $surname;

}

}

// nejaky jiny namespace
namespace Cz\Zend\Php;

Témata, do kterých materiál patří