場景:
自已寫的框架如:ThinkMan,有一個自定義的加載類Autoloader.php 用來加載ThinkMan的,
站點入口文件index.php 通常是引入ThinkMan的 Autoloader.php來完成功能;
在沒有使用Workerman之前,一切正常,
為了體驗強大的Workerman,在ThinkMan下通過composer引入workerman,
啟動腳本start.php正常啟動,端口正常.
問題:
使用WebServer后,所有的站點頁面只顯示一次,刷新后就變成空白,
測試后發(fā)現(xiàn)是加載ThinkMan下的Autoloader.php導致的。
如果不引入Autoloader.php單獨使用ThinkMan下的類功能是正常的,頁面也能正常顯示,刷新不空白
那么請問,我是哪里出了問題呢?
Autoloader.php:
class Autoloader{
protected static $classMap = array();
public static function load($class){
$class_file = str_replace('\\','/',dirname(__DIR__).'/'.$class.'.php');
if(!isset(self::$classMap)){
if(file_exists($class_file)){
require_once $class_file;
self::$classMap = $class;
return true;
}else{
return false;
}
}else{
return true;
}
}
}
spl_autoload_register('\ThinkMan\Autoloader::load');
感謝@walkor ,
花了兩三天時間才查出是wm的Worker::runAll() 與自身框架執(zhí)行順序的問題
另外請教一個問題:
如何在不使用如memcache來存儲傳遞$_SESSION的情況下徹底銷毀$_SESSION?
如在退出登錄時:unset($_SESSION)后在當前頁面$_SESSION是被清為空了
但在其它頁面依然能訪問到$_SESSION值。
感謝@walkor
$_SESSION的問題已經想辦法解決了
另外碰到一個上傳的問題,如同一個form表單下有兩個或多個上傳控件:
<form method="post" enctype="multipart/form-data" action="...">
<input type="file" name="file1" />
<input type="file" name="file2" />
<button type="submit">上傳</button>
</form>
當提交后后臺只能拿到最后個input的值
var_export($_FILES)也只能拿到最后一條數據
是表單設計有相應的規(guī)則嗎還是哪里的問題?