ホームページ  >  記事  >  バックエンド開発  >  PHP 関数は呼び出されたコードを見つけられませんでしたが、実行時に実行されました (PHP 初心者)

PHP 関数は呼び出されたコードを見つけられませんでしたが、実行時に実行されました (PHP 初心者)

WBOY
WBOYオリジナル
2016-06-13 13:19:311019ブラウズ

PHP 関数は呼び出されたコードを見つけられませんでしたが、実行時に実行されました (PHP 初心者は助けを求めます)
私が遭遇したこの奇妙な問題について質問してください。ソフトスイッチシステム、
次に、その操作データベースに従って遡って、元のユーザー(どのボタンが押されたか)から操作方法を見つけたいと思います。

問題は、データベースを操作する関数が見つかりましたが、この関数しかありません。
しかし、この関数を呼び出す PHP はありません。

そして、この関数は実際に実行されました (コメントアウトした後、画面から送信をクリックしましたが、DB にはデータは挿入されませんでした)。

これには非常に落ち込んでいます。
PHP のクラスの関数は、他の PHP 以外のものから呼び出すことができますか?
他にどのように呼ばれますか?
これは単なる通常の機能です。

関数をポストします:
class core_conf {

function core_devices_addsip($account) {
global $db;
global $currentFile;

。 .....

$compiled = $db->prepare('INSERT INTO sip (id, キーワード, データ, フラグ) 値 (?,?,?,?)');
$result = $db->e​​xecuteMultiple($compiled,$sipfields);
if(DB::IsError($result)) {
die_freepbx($result->getDebugInfo()."< ; br>
".'SIP テーブルへの追加エラー');
}
}
}

私は PHP を初めて使用するため、この問題について表面的にしか理解していません。 。 私は混乱しています。

-----解決策--------------------------------
core_devices_addsip のことですか? ? ?
プロジェクトのすべてのファイルで core_devices_addsip 文字列を検索します

このメソッドに記述することもできます
print_r(debug_print_backtrace());
実行すると、そこに誰が呼び出しているかを観察できます
------解決策------------------
おそらく、間違ったターゲットを見つけてしまったのでしょう

追跡プログラムはボトムアップで実行する必要があります
。つまり、インターフェイスから開始してレイヤーごとに剥がしていきます。このためには、いくつかの簡単なスタブ ページ

PHP コード
を記述する必要があります。
関数 f1() {
  f2();
}
関数 f2() {
  debug_print_backtrace();
}
f1(); <div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHPコンテナ次の記事:PHPコンテナ