草庐IT

register_global

全部标签

php - 是否使用 $GLOBALS ['HTTP_GET_VARS' ] 已弃用?

我知道使用$HTTP_GET_VARS已弃用,但如何使用$GLOBALS['HTTP_GET_VARS']?该数组键将来可能会消失吗?我基本上在遗留项目中拥有以下所有内容,我需要将其与CMS集成,除非绝对必要,否则我真的不想更新它。functiontable_manager_import_vars($var){$vars=explode(",",$var);foreach($varsAS$var){switch($var){case"G":$var="HTTP_GET_VARS";break;case"P":$var="HTTP_POST_VARS";break;case"C":$va

php - 命名空间 : "use as" global

我有一个名为“init.php”的文件,我在其中包含了所有带有命名空间的类。例如,其中之一是:MyClass\Helper。总是在init中,在这些类之后,包含另一个使用MyClass\Helper的文件(b.php)。最后,也使用MyClass\Helper的索引需要这个文件“init”。所以:init.php->Requirelibs/Helper.php(finalnamespace:MyClass\Helper)->Requireb.php->UseMyClass\Helperindex.php->Requireinit.php->UseMyClass\Helper现在我想在包

php - Laravel ServiceProvider 的 register() 方法究竟是如何工作的?

我是PHP和Laravel的新手。我按照本教程将reCAPTCHA支持添加到我的Laravel应用程序中的页面:http://tutsnare.com/how-to-use-captcha-in-laravel-5/无论如何,我的疑问与验证码严格无关,而是与之前教程的内容有关:如您所见,它添加了这个服务提供商:'providers'=>[Anhskohbo\NoCaptcha\NoCaptchaServiceProvider::class,],根据我阅读官方文档的理解:https://laravel.com/docs/5.4/providersServiceProvider是注册我的应

php - smarty 从 $globals 获取数据

如果使用{debug}来查看我可以在页面中访问哪些数据。现在我需要的东西在{$GLOBALS}里,比如current_user=>Array(17)id=>3759user_name=>blaemail=>bla@bla.comgroup=>Array(2)id=>userscaption=>Users但是我如何获得我需要在我的页面上显示的数据呢?喜欢电子邮件地址吗? 最佳答案 如果您只能访问模板文件,您可以将$GLOBALS分配给一个聪明的var$globals,如下所示:{php}$this->assign('globals',

php - register_shutdown_function() - 什么是最佳实践?

我目前出于多种目的使用register_shutdown_function()。一种用途是处理fatalerror,另一种用途是记录执行期间使用的资源,如时间、内存使用情况等。目前我注册了两个不同的关闭函数,但在一个测试中只有第一个运行而另一个似乎失败了。现在这当然可以由函数本身的一些错误触发,所以我重写了它,但是是否有可能是使用多个register_shutdown_function调用引起的错误?那么这里的最佳实践是什么,是注册两个不同的函数,还是只调用一个处理不同任务的函数?如果发生fatalerror,让函数加载错误处理类是否也安全(并且可能),还是我应该将功能保留在函数本身中

php - 使用 SPL_AUTOLOAD_REGISTER 时命名空间如何工作?

我今天正在学习如何在PHP中使用命名空间和自动加载,但我似乎遇到了障碍。当我不使用spl_autoload_register而是使用require_once时,事情似乎有效。我的文件夹结构非常简单:-index.php-class/-Users.php在我的index.php文件中我有:在我的class/Users.php文件中我有:这绝对没问题,返回了1的ID理想情况下,我想使用自动加载功能,我发现了spl_autoload_*,这就是我尝试做的,但没有成功:在我的class/Users.php文件中我有:在我的index.php文件中我有:但是我得到一个错误:`Class'User

php - $GLOBALS 超全局在传递给函数时被修改

我在PHP中遇到了一些奇怪的行为:functionf($var){//notusingreferencesforeach($varas$k=>$v){unset($var[$k]);//shouldn'tthisunsetfromacopy?!}}print'';var_dump($GLOBALS);//arrayf($GLOBALS);var_dump($GLOBALS);//null?!http://3v4l.org/dQmQN有人知道为什么会这样吗? 最佳答案 打印出它正在删除的内容并启用警告以查看what’sactually

php - register_shutdown_function 将引用转换为值?

我正在尝试使用一个关闭函数,该函数使用注册后动态更改的值。我的理解是,通过引用传递变量将允许代码后面部分的更改影响关闭调用。下面的代码证明情况并非如此:我是不是误解了应该怎么做?将引用传递转换为值传递是注册函数的预期行为吗?PHP版本5.5.9 最佳答案 一种可能的解决方案是使用匿名函数(在本例中是一个闭包,捕获了$x作为引用):$x=0;$shutdown=function()use(&$x){echo$x;};register_shutdown_function($shutdown);$x=1;exit();演示:http://

php - Hack typechecker 无法识别函数内的 'global' 关键字

我正在使用HHVM编写一个系统工具,但我终究无法弄清楚为什么当我运行hh_client时这段代码会出错$__al_paths=array();functionrequires(string$classPath):void{global$__al_paths;$className=basename($classPath);if(!isset($__al_paths[$className])){$__al_paths[$className]=AL_CLASSES_FOLDER.'/'.$classPath.'.'.AL_CLASS_EXTENSION;}}当我运行hh_client时,会出

php - 什么替换了 Smarty 3 中的 register_modifier

我正在考虑从Smarty2升级到Smarty3,并使用注册了少量修改器register_modifier($ModifierName,$FunctionName)我在文档中找不到指示我应该将这些更改为什么的地方,我试过了。$Smarty->Register->Modifier(但是报错。谁能指出我的文档。 最佳答案 原来它被移到了registerPlugin()http://www.smarty.net/docs/en/api.register.plugin.tpl 关于php-什么替换