Php 在字符串的末尾使用strlen

Php 在字符串的末尾使用strlen,php,Php,我需要去掉$k末尾的$u GET['id']值。示例name=address158,158是id。。那么,通过使用$_GET['id']作为参考,从'address'到strlens 158是否存在差异 foreach($_POST as $k=>$v){ @$select.=" `".mysql_real_escape_string($k)."` = '".mysql_real_escape_string($v)."',"; } $select = rtrim($sele

我需要去掉$k末尾的$u GET['id']值。示例
name=address158
,158是id。。那么,通过使用$_GET['id']作为参考,从'address'到strlens 158是否存在差异

foreach($_POST as $k=>$v){
        @$select.=" `".mysql_real_escape_string($k)."` = '".mysql_real_escape_string($v)."',";
}
$select = rtrim($select,',');
$select = "UPDATE load_test SET".$select." WHERE Id=".$_GET['id'];
mysql_query($select);

也许是这样的

$k = substr($k, 0, -strlen($_GET['id']));

我假设标识符总是在字符串的末尾。

这里有很多方法,这取决于输入的严格程度

如果要按
=
字符拆分:可以使用
strpos
查找
=
字符,也可以使用
分解
拆分键和值


如果您想使用ID,那么您可以在ID上使用
strrpos

为什么要使用strlen?为什么要在第二行中抑制错误?无论您做什么,请不要在您的查询中使用未初始化的原始数据!那个代码只是要求被黑客破解。谷歌“SQL注入”学习如何清理数据以便在查询中使用。因此,您坚持使用此注入易受攻击的代码。唉,上校。弹片回来了!我很高兴。