Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以从MySQL查询中调用PHP函数吗?_Php - Fatal编程技术网

我可以从MySQL查询中调用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/MySQL非常陌生,我想知道是否可以在UPDATE语句中使用PHP函数,如下所示:

<?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."'");
   }
}