相关疑难解决方法(0)

更好地取消设置多个数组元素的方法

这里的交易是我有一个包含17个元素的数组.我希望在一定时间内获得我需要的元素,并从阵列中永久删除它们.

这是代码:

$name = $post['name'];
$email = $post['email'];
$address = $post['address'];
$telephone = $post['telephone'];
$country = $post['country'];

unset($post['name']);
unset($post['email']);
unset($post['address']);
unset($post['telephone']);
unset($post['country']);
Run Code Online (Sandbox Code Playgroud)

是的,代码很难看,不需要打击.如何让这个看起来更好?

php

72
推荐指数
3
解决办法
6万
查看次数

可以在最近即将推出的PHP中使用关联数组以某种方式列出()吗?

例:

list($fruit1, $fruit2) = array('apples', 'oranges');
Run Code Online (Sandbox Code Playgroud)

上面的代码当然可行,但代码如下:

list($fruit1, $fruit2) = array('fruit1' => 'apples', 'fruit2' => 'oranges');
Run Code Online (Sandbox Code Playgroud)

得到: Notice: Undefined offset: 1 in....

有没有办法以某种方式用列表来引用命名键list('fruit1' : $fruit1),你有没有看到这样的计划用于将来的版本?

php associative-array list

39
推荐指数
3
解决办法
2万
查看次数

在php中为对象/关联数组进行解构赋值

在CoffeeScript,Clojure,ES6和许多其他语言中,我们对对象/贴图/等进行了解构,如下所示:

obj = {keyA: 'Hello from A', keyB: 'Hello from B'}
{keyA, keyB} = obj
Run Code Online (Sandbox Code Playgroud)

我在php中找到了这个list函数,它允许你像这样构造数组:

$info = array('coffee', 'brown', 'caffeine');
list($drink, $color, $power) = $info;
Run Code Online (Sandbox Code Playgroud)

有没有办法在PHP中解构对象或关联数组?如果不在核心库中,也许有人写了一些智能助手功能?

php destructuring

23
推荐指数
2
解决办法
1万
查看次数

如何演示extract的漏洞利用($ _ POST)?

不是 PHP开发人员,但我正在评估PHP5应用程序的安全性.

作者依赖extract($_POST)extract($_GET)在某些地方,不在职能范围内.

我的建议是相应地调用extract($_POST, EXTR_PREFIX_ALL, 'form')和更改代码,但他的立场是任何变量在后续包含中被重新定义.

例如,我可以通过提供_ENV=somethingpost值来轻松更改超全局,但是superglobals是数组,我将它们变成字符串,我不确定它是否会产生邪恶效果.

我可以看看几个isset()用途并从那里向后退.但我想有这种攻击不需要知识或占卜来源.

是否有一些有趣的变量可以设置/更改,也许在PHP的内部?

谢谢

php security

17
推荐指数
2
解决办法
1万
查看次数

PHP:有一种安全的提取方式($ _ POST)

有没有一种安全的方法来自动分配发布数组中的键?以下是错误方式的两个例子......

foreach( $_POST as $key => $value ) {
     $$key = $value;
}
Run Code Online (Sandbox Code Playgroud)

要么

extract($_POST)
Run Code Online (Sandbox Code Playgroud)

是否有更好的方法,或者最好是编码:

$foo = $_POST('foo');
$bar = $_POST('bar');
....
Run Code Online (Sandbox Code Playgroud)

对于我表格中的所有50个输入?

(发布的信息将被插入到数据库中).

php

11
推荐指数
2
解决办法
3万
查看次数

PHP使用这个'$$ var'是什么意思?

我正在尝试学习php,我在foreach循环中看到了这是什么意思?我理解&$ var它直接引用了对象的内存地址.但是$$ var意味着什么?究竟是什么?

这是一个例子.

    foreach($this->vars as $key => $value)
    {
        $$key = $value;
        echo "$$Key: " . $$key;
        echo "Key: " . $key;
        echo "<br/>";
        echo "Value: " . $value;
    }
Run Code Online (Sandbox Code Playgroud)

php variables foreach

-1
推荐指数
1
解决办法
158
查看次数