Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中解析下划线_Php_Mysql - Fatal编程技术网

在PHP中解析下划线

在PHP中解析下划线,php,mysql,Php,Mysql,我有一个脚本,当我执行我得到的var\u dump($\u POST)时,我会从表单中提取数据 这很好,只是我希望“Object_Class”是“Object Class”,因为我试图将它与另一个具有相同值的字符串匹配,但由于下划线而不匹配。如何删除它 $_POST['Object Class'] = $_POST['Object_Class']; unset( $_POST['Object_Class']); 编辑:如果这是他需要修改的唯一关键,那就太过分了,但我建议的是一个更普遍的解决方案

我有一个脚本,当我执行我得到的var\u dump($\u POST)时,我会从表单中提取数据

这很好,只是我希望“Object_Class”是“Object Class”,因为我试图将它与另一个具有相同值的字符串匹配,但由于下划线而不匹配。如何删除它

$_POST['Object Class'] = $_POST['Object_Class'];
unset( $_POST['Object_Class']);
编辑:如果这是他需要修改的唯一关键,那就太过分了,但我建议的是一个更普遍的解决方案

$newPOST = array();

foreach($_POST as $key => $val) {
    $newPOST[str_replace('_',' ', $key)] = $val;
}

$_POST = $newPOST;

或者类似的东西。

绝对不是。他想编辑数组索引,你不能这样做。是的,我的var_转储是:array(1){[“”]=>string(12)“Object Class”}对不起,这里有一个类型。呃,让我说得更具体一点。我有一个随机生成的值列表,没有$\u Post值是相同的,但是任何在它们之间有空格的值都会在Post变量名所在的位置显示下划线。我认为这是一个正确的想法,但不确定假设你只想改变“索引值”,这就是你想要的吗?
$arr = $_POST;
foreach ($arr as $key => $value) 
{
    if(strpos($key, '_') !== false)
    {
        unset ($arr[$key]);    
        $new_key = str_replace('_', ' ', $key);    
        $arr[$new_key] = $value;
    }
}
$newPOST = array();

foreach($_POST as $key => $val) {
    $newPOST[str_replace('_',' ', $key)] = $val;
}

$_POST = $newPOST;
$arr = $_POST;
foreach ($arr as $key => $value) 
{
    if(strpos($key, '_') !== false)
    {
        unset ($arr[$key]);    
        $new_key = str_replace('_', ' ', $key);    
        $arr[$new_key] = $value;
    }
}