proč to vyhazuje vyjímku
mám tu dva příklady, kdy nevím proč mi PHP5.2.9 vyhazuje vyjímky:
výchozí třída::::
final class CacheFile {
const EXP = '.gz';
...
public static function get(bool $static, string $file_uri, mixed $params, mixed $modified, mixed $expires) {
...
}
...
private static function getStaticFilename(string $ext = null) {
...
}
...
}
první::::
CacheFile::get(true, $GLOBALS['web_path'].$_SERVER['REDIRECT_URL'], null, $modified, $expires);
>>>
Argument 2 passed to CacheFile::get() must be an instance of string, string given, called in /DISK2/WWW/
druhý:::: příklad který jsem nepochopil, na té samé třídě v rámci privatní funkce se volá
self::getStaticFilename(self::EXP);
Argument 1 passed to CacheFile::getStaticFilename() must be an instance of string, string given, called in /DISK2/WWW/
výchozí třída::::
final class CacheFile {
const EXP = '.gz';
...
public static function get(bool $static, string $file_uri, mixed $params, mixed $modified, mixed $expires) {
...
}
...
private static function getStaticFilename(string $ext = null) {
...
}
...
}
první::::
CacheFile::get(true, $GLOBALS['web_path'].$_SERVER['REDIRECT_URL'], null, $modified, $expires);
>>>
Argument 2 passed to CacheFile::get() must be an instance of string, string given, called in /DISK2/WWW/
druhý:::: příklad který jsem nepochopil, na té samé třídě v rámci privatní funkce se volá
self::getStaticFilename(self::EXP);
Argument 1 passed to CacheFile::getStaticFilename() must be an instance of string, string given, called in /DISK2/WWW/
Myslím že kvůli tomuhle:
public static function get(bool $static, string $file_uri, mixed $params, mixed $modified, mixed $expires) {
dej pryč "string" a nech parametr bez udání typu, mělo by to pak jít (tohle se mi taky stávalo, když jsem se pokoušel udávat u parametrů typy, proto už to nedělám a nechávám zásadně parametry funkce bez udání typu).
public static function get(bool $static, string $file_uri, mixed $params, mixed $modified, mixed $expires) {
dej pryč "string" a nech parametr bez udání typu, mělo by to pak jít (tohle se mi taky stávalo, když jsem se pokoušel udávat u parametrů typy, proto už to nedělám a nechávám zásadně parametry funkce bez udání typu).