0

私はphp APIを設計しています。サーバーに追加するphpファイル(core.php)をユーザーに提供します。そして、それを使用するには、include_once('api/core.php') を実行するだけです。core.php 内で、メイン サーバーからの json ファイルを解析する関数をいくつか作成する必要があります。

完全なユーザー リストが必要な場合は、次のようにする必要があります。

include_once('api/core.php');
print_r(myApi_list('user','all'));

core.php内では、関数は次のようになります。

function myApi_list($pa, $pb) {
  if($pa == 'user') {
    //here will be a code that call my server
    return resp;
  } 
  //more stuf
}

そしてもちろん、私のサーバーには、SQL クエリとセキュリティ関連を処理する別のスクリプトがあります。私の問題は、core.php からサーバーを呼び出す最良の方法は何ですか? file_get_contents を使用する必要がありますか? おそらくjsonファイルで応答するようにサーバースクリプトに指示するだけです(そして、core.phpはそれを解析するだけです)?または、cUrl を使用する必要がありますか? これは API であるため、php サーバーでデフォルトでアクティブになる可能性が高いモジュールを使用することをお勧めします。

この状況での最善のアプローチは何だと思いますか?

4

2 に答える 2

1

私のお勧めは cURL です。

関数 file_get_contents は、その使用自体が非常に制限されています。データまたは false のみを返すことができます。

一方、cURL には多くのオプションがあります。したがって、404 api が廃業した、500 サーバーがダウンしたなどのエラーメッセージをきれいに作成できます。また、cURL には POST 値を使用するオプションがありますが、file_get_contents は使用しません。

また、file_get_contents には allow_url_foppen の制限があります (これにより、外部アドレスに使用される関数を無効にすることができます)。この質問を参照してください(これは、file get content で cURL を使用することも提案しています)

于 2013-04-29T13:33:25.430 に答える