<?php
class Statics {
private static $keyword;
public static function __callStatic($name,$args){
self::$keyword = "google";
}
public static function TellMe(){
echo self::$keyword;
}
}
Statics::TellMe();
這是一個簡單的故障我用__construct
試過,但我寫的代碼Statics::TellMe();
的方式,我需要寫new
爲__construct
工作。而我的私有靜態變量keyword
不會被寫入沒有被稱爲任何想法,爲什麼這是行不通的?__call和__callStatic不能正常工作或寫入錯誤
private static $pathname;
public function __construct($dir = "")
{
set_include_path(dirname($_SERVER["DOCUMENT_ROOT"]));
if($dir !== "") {
$dir = "/".$dir;
}
self::$pathname = $dir.".htaccess";
if(file_exists(self::$pathname)) {
self::$htaccess = file_get_contents($dir.".htaccess",true);
self::$htaccess_array = explode("\n",self::$htaccess);
}
}
的self::$patname
是沒有得到分配,因爲我沒有做$key = new Key();
,所以我需要一種方法來做到這一點,如果我只是做Key::get()
或類似的東西。
錯誤是告訴你什麼是錯的:__callStatic應該被聲明爲public靜態__callStatic –
好吧大聲笑我會嘗試出來認爲它也必須是一個功能-_- – EasyBB
仍然不能正常工作-_-唉這樣的背後疼痛 – EasyBB