-2

関数 func_connect_mssql を呼び出そうとすると、このエラーが発生します。

これが私のコードです:

    $func_connect   = 'func_connect_mssql';
    $session = $func_connect($serv, $user, $pass, $base) 
or die("<p class='Perror'>&middot;Failed - err Connect: ".$func_error()."</p>");

ご覧のとおり、 func_connect は関数を呼び出すために使用している変数であるため、「$ func_connect」を使用しました。それを変更して関数の名前を直接入力しようとしましたが、2行目に同じエラーが返されます.

4

2 に答える 2

1

あなたは自分のコードに誤解されています:

$func_connect   = 'func_connect_mssql';
$session = $func_connect($serv, $user, $pass, $base) or die("<p class='Perror'>&middot;Failed - err Connect: ".$func_error()."</p>");

代わりに、少なくとも複数の行にまたがってラップする必要があります。

$func_connect   = 'func_connect_mssql';
$session = $func_connect($serv, $user, $pass, $base)
    or die("<p class='Perror'>&middot;Failed - err Connect: ".$func_error()."</p>")
    ;

エラーメッセージは、エラーが発生した行を示します。あなたが現在考えているのとは違う位置にあることを知って驚くでしょう。

あなたのコードは少し壊れやすいように見えるので、時々セーフティネットを追加したいかもしれません:

$func_connect   = 'func_connect_mssql';

is_callable($func_connect)) or die('Connection Function is not callable!');
is_callable($func_error)) or die('Error function is not callable!');

$session = $func_connect($serv, $user, $pass, $base)
    or die("<p class='Perror'>&middot;Failed - err Connect: ".$func_error()."</p>")
    ;
于 2012-08-16T09:49:51.517 に答える
1

これを試して :call_user_func()

$func_connect   = 'func_connect_mssql';
$session = call_user_func($func_connect,$serv, $user, $pass, $base) or die("<p class='Perror'>&middot;Failed - err Connect: ".$func_error()."</p>");
于 2012-08-16T09:39:43.990 に答える