私は2つのサーバーを持っています。サーバーAにはすべてのデータベースがあります。サーバBはサーバAにどのようにクエリを送信し、結果はfsockopen()
で受信できますか? 現在、私は実際のテキストをソケットを通して渡すことができます(つまり、サーバーAのPHPコードがecho
のようなものを出力する場合)。このオープンソケットのクエリ結果(リソース)をどのように通過させることができますか?PHPでリソースをfsockopen()に渡す
0
A
答えて
1
fsockopenのを使用すると、あなたがサーバーBのデータベースと通信することができます唯一の方法であるクエリの結果をシリアル化またはJSON形式でそれらをコードし、ソケットに書き込む場合は可能性があります。
は、あなたが直接問い合わせることができるだけので、サーバーAからMySQLサーバへの読み取り専用アクセス権を付与することはできませんか?それ以外の場合は、fsockopenの代わりにRESTサービスが適しています。それはとにかく、サーバーA上の任意の意味を持っていないよう
述べたようには、あなたがソケット上のリソースを渡すことはできません。それをソケットに渡そうとすると、おそらく文字列(Resource#1)が返されます。
1
fwriteの/読み出し(バイナリ)文字列にデータを変換するので、あなたは、すぐにわかる経由PHP resource type*Docs*を渡すことはできません。参照:リソース変数がリソースに変換し、開かれたファイル、データベース接続、イメージキャンバスエリアのように特別なハンドラを保持したよう
資源に変換
は意味がありません。
同じことは、例えば、何か他のものにリソースを変換するための真であります文字列。
0
何をしていますか?リモートのmysqlを許可して、データベースサーバにその仕事をさせてください。
ピザのスライスを教えてください。待って、私はそれをデジタルで送信することはできません。私は絵を送るだけです。それはちょうど良い、そうですか? – outis
さらに真剣に言えば、ネットワーク経由でリソースを送信することは、ローカルパス名を送信するようなものです。他のコンピュータはファイルにアクセスしてファイルを見つけることができますが、コンピュータ上のファイルと同じではありません。 – outis