我有一个电话号码(字符串),例如"+ 123-456-7890",我想变成一个看起来像这样的列表:[+,1,2,3, - ,....,0].
为什么?所以我可以遍历列表并删除所有符号,所以我留下了一个只有数字的列表,然后我可以将其转换回字符串.
解决这个问题的最佳方法是什么?我遇到的所有解决方案都不适用,因为我在数字之间没有任何特殊字符(所以我不能在那里拆分字符串.)
有任何想法吗?对此,我真的非常感激!
编辑 - 这是我尝试过的:
x = row.translate(None, string.digits)
list = x.split()
Run Code Online (Sandbox Code Playgroud)
也:
filter(lambda x: x isdigit())
Run Code Online (Sandbox Code Playgroud) 我有一个奇怪的问题:我的if和else语句都在执行.这是我的代码:
if ($sel_user['name'] != $name) {
$query = "UPDATE owner SET
..."
$result = mysql_query($query);
if (mysql_affected_rows() ==1) {
$query2 = "UPDATE queue_acl SET
..."
$result2 = mysql_query($query2);
if (mysql_affected_rows() ==1) {
$_SESSION['updates_occurred'] = true;
} else {
$_SESSION['updates_occurred'] = false;
}
}
}
if ($sel_user['orgId'] != $orgId) {
$query = "UPDATE ownerOrganization SET
..."
$result = mysql_query($query);
if (mysql_affected_rows() ==1) {
$query2 = "UPDATE queue_acl SET
..."
$result2 = mysql_query($query2);
if (mysql_affected_rows() ==1) {
$_SESSION['updates_occurred'] = true;
} else …Run Code Online (Sandbox Code Playgroud) 我想跟踪用户的信息,即使它们已从数据库中删除.
我想做这件事有两个原因.首先,删除用户后,我想显示一条消息"$ name已成功删除".其次,我想将已删除用户的名称写入日志文件.
我现在有什么不起作用,因为当从数据库中删除用户时,名称变为NULL(我使用$ _SESSION变量).有没有办法访问这些信息?最聪明的方法是什么?
我有一个非常讨厌的错误,我无法摆脱.这是引起问题的函数:
function get_info_by_WatIAM($WatIAM, $info) {
$users_info = array();
exec("uwdir -v userid={$WatIAM}", $users_info);
foreach ($users_info as $user_info) {
$exploded_info = explode(":", $user_info);
if (isset($exploded_info[1])){
$infoArray[$exploded_info[0]] = $exploded_info[1];
}
}
return $infoArray[$info]; }
Run Code Online (Sandbox Code Playgroud)
这是调用函数的内容:
} elseif ( empty(get_info_by_WatIAM($_POST['ownerId'])) ) { ...
Run Code Online (Sandbox Code Playgroud)
我真的很感激任何建议.非常感谢!
如果代码没有意义,这里有一个进一步的解释:exec使用一个程序来存储学校中所有用户的信息.这些包括教师,姓名,用户ID等.这$_POST['ownerId']是一个用户名 - 想法是,输入用户名后,所有用户的信息将自动填写