用数组中的hdot替换空格(空格)

时间:2016-10-03 07:22:09

标签: php

Nullable

并且在我的名字和姓氏之间我有像John Doe这样的白色空间我想拥有John.Doe

我试图做这样的事情

$testarray=array(
    'username'  => 'accname',
    'password'  => 'usrpswd',
};

但它不起作用,应该怎么看?

2 个答案:

答案 0 :(得分:2)

描述您可以使用以下代码片段进行查询。这是利用在迭代数组时在字符串之间查找空格的正则表达式。假设您的阵列具有静态/固定密钥。

<强>代码

  $testarray = array(
    'username' => 'john doe',
    'password' => 'usrpswd'
  );

  foreach ($testarray as $key => $key_val) {
     // Use regex for finding any space between strings
     if ($key == "username") {
        if (preg_match('/\s/', $key_val)) {
            $testarray["username"] = str_replace(' ', '.', $key_val);
        }
     }
  }

现在,用户名密钥的值为“John.Doe”。

答案 1 :(得分:1)

pass by-ref

替换foreach语句
foreach ($testarray as &$value)

并删除似乎没必要的$value = $username;

或者你可以更新它以使用它(只更新用户名并保持密码原样) -

foreach ($testarray as $key => &$value) {
  if ($key == 'username') {
    $value = str_replace(' ', '.', $value);
  }
}

如果它只有一个值(固定数组)

$testarray['username'] = str_replace(' ', '.', $testarray['username']);