我现在的需求是这样的...
服务器端在跑程序while(true);//无限循环接受信息...具体代码就不贴出了.//动态加载类..
function __autoload($className) {
include_once 'Controller/'.$className . '.php';
} 问题:
比如加载了文件 .a.php... 这个文件我不管怎么修改. 都无效. 包括删掉........我个人认为. 解决这个问题 可以采用.重新再次加载类.但是不知道怎么写..请高手门赐教.. 别的方式也可以..分不多..没分了. 赌博输了....
服务器端在跑程序while(true);//无限循环接受信息...具体代码就不贴出了.//动态加载类..
function __autoload($className) {
include_once 'Controller/'.$className . '.php';
} 问题:
比如加载了文件 .a.php... 这个文件我不管怎么修改. 都无效. 包括删掉........我个人认为. 解决这个问题 可以采用.重新再次加载类.但是不知道怎么写..请高手门赐教.. 别的方式也可以..分不多..没分了. 赌博输了....
我的程序 是需要在linux服务器后台 跑的
我需要的结果是一修改文件.就会重新加载文件.我还想多.采用进程 重新这个文件..但是端口不能变. 变了. session就没了.有操作进程这种方式的. 也可以说说....
那么怎么还企望 重新再次加载 呢?
估计你完全不需要那个服务程序,只要用cronjob重复定时执行该程序即可,更改后的文件将在下次执行是载入
File_Get_Contents('Controller/'.$className . '.php);取得源码内容
然后使用eval这个函数来执行刚取得的源码
解决个这问题很简单, 用 function_exists, class_exists
那就不能再次载入了
$temp=filetime
if $temp<$newfiletime {
exit while or break;
header(localtion:filename):
}
)不知道可行不????
$gmworker= new GearmanWorker();
$gmworker->addServer();$gmworker->addFunction("goods", "run");
while($gmworker->work())
{
if ($gmworker->returnCode() != GEARMAN_SUCCESS)
{
echo "return_code: " . $gmworker->returnCode() . "\n";
break;
}
}function run($job)
{
//clearstatcache();
$data = unserialize($job->workload());
$func = $data['type'].'Initial';
$wine = new $func($data);
return serialize($wine->run());
}function __autoload($className) {
include 'Controller/'.$className . '.php';
}
?>autoload他只会从头到尾执行一次.. 我在修改文件.他就不执行了....有人对 autoload 有了解的吗. 普通采用include 会报 class 以定义的..