如何通过URL请求修改PHP文件中的变量值?
实现通过URL参数修改PHP变量值的方案
直接修改log.php的代码,让它优先读取URL传入的my_log参数值,代码如下:
<?php // 优先使用URL传入的参数,无参数时用默认值 $my_log = isset($_GET['my_log']) ? $_GET['my_log'] : "old.log"; echo $my_log; ?>
效果说明
- 访问
http://localhost/log.php?my_log=new.log时,会输出new.log - 直接访问
http://localhost/log.php时,会输出默认的old.log
安全提示(生产环境建议)
如果是线上生产环境,建议对传入的参数做过滤,避免恶意路径注入,比如只保留文件名部分:
<?php $default_log = "old.log"; if (isset($_GET['my_log'])) { // 过滤参数,仅保留文件名,防止路径遍历攻击 $my_log = basename($_GET['my_log']); } else { $my_log = $default_log; } echo $my_log; ?>
内容的提问来源于stack exchange,提问作者سعید نوروزی
相关产品推荐
相关产品推荐

