我可以从MySQL查询中调用PHP函数吗?
我对PHP/MySQL非常陌生,我想知道是否可以在UPDATE语句中使用PHP函数,如下所示:我可以从MySQL查询中调用PHP函数吗?,php,Php,我对PHP/MySQL非常陌生,我想知道是否可以在UPDATE语句中使用PHP函数,如下所示: <?php function myfun($a) { $a = $a + 1; return $a; } mysql_query("UPDATE `my_table` SET `myfield` = myfun(`par`)"); ?> 不,不,不是 这是两种独立且不同的技术,由两个单独的过程实现 但是,不,您只能执行以下操作 你可以这样做 mysql_query("U
<?php
function myfun($a) {
$a = $a + 1;
return $a;
}
mysql_query("UPDATE `my_table` SET `myfield` = myfun(`par`)");
?>
不,不,不是
这是两种独立且不同的技术,由两个单独的过程实现
但是,不,您只能执行以下操作
你可以这样做
mysql_query("UPDATE my_table SET myfield = '".myfunction(par)."'");
或
更新
这就是你的意思吗
updateTable(10);
function updateTable($num){
for($i = 0; $i<$num; $i++){
mysql_query("UPDATE my_table SET myfield = '".$i."'");
}
}
updateTable(10);
函数可更新($num){
对于($i=0$i@DomenicoG您可以获取函数的返回并将其粘贴到查询中(请参见更新的答案)我不知道为什么这个问题被否决了,对于PHP/MySQL新手来说,这是一个完全有效的问题。很明显,这个请求可以按照Stevanicus下面的回答来完成,Domenico只是有一个错误的实现,即理解是全新的。Sheesh people。@bowlerae:(a)查看编辑历史记录;它甚至不接近有效的PHP,并且根本没有格式化。(b)未指定结尾;未指定要求。这是一个糟糕的问题。function Increment(){static$jVal;$jVal=$jVal+1;return$jVal;}($kk=1;$kkk)的($kk)如何定义过程?如果我写:function Increment(){static$jVal;$jVal=$jVal+1;return$jVal;}for($kk=1$kk@DomenicoG如果我理解正确,我已经更新了answer@Stevanicus:IMO他希望将函数应用于表中的字段。即,该函数应在查询中执行,而不是用于组合查询。
updateTable(10);
function updateTable($num){
for($i = 0; $i<$num; $i++){
mysql_query("UPDATE my_table SET myfield = '".$i."'");
}
}