您可以使用相同的脚本来更新 SQL 中的条目,没有办法(我知道)按照您的要求使用纯 SQL 进行操作。
也就是说,您可以从数据库中检索数据(使用 mysql 函数),修改信息并将其返回到数据库。
为了争论,如果您在本地拥有数据库,名为 test 且没有密码以 root 身份登录,您可以使用以下内容:
function getmtext($str) {
$text = '';
$words = str_word_count($str, 1);
foreach ($words as $word) {
if ($word[0] >= 'A' && $word[0] <= 'Z')
if (strlen($word)>3)
$text .= $word.' ';
}
return $text;
}
//set the database parameters
$dbHost = "localhost";
$dbUser = "root";
$dbPass = "";
$dbName = "test";
//create the database connection
$dbConn = mysql_connect ($dbHost, $dbUser, $dbPass) or die ('MySQL connect failed. ' . mysql_error());
mysql_select_db($dbName) or die('Cannot select database. ' . mysql_error());
//sql to get all texty3 rows from table
$sql = "select id, texty3 from testtable";
$query = mysql_query($sql); //run the sql
while($result = mysql_fetch_assoc($query)) { //loop through each row
$rowId = $result['id'];
$text = $result['texty3'];
$cleansedText = getmtext($text);
mysql_query("update testtable set texty3 = '$cleansedText' where id = '$rowId';");
}
这将通过数据库并使用该函数删除所有与函数中定义的参数不匹配的单词。(抱歉,我现在无法检查此代码,但它应该是正确的或至少接近)