PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHP php://


はじめに

php:// ラッパーは、さまざまなI/Oストリームへのアクセスを有効にします。これには、標準の入力、出力、およびエラーストリームが含まれます。インメモリ、ディスクバックアップ、およびフィルタリングされたストリームには、php://プロトコルを使用してアクセスすることもできます。

標準ストリーム

php:// stdin php:// stdout およびphp:// stderr PHPプロセスへの標準入力ストリームデバイス、標準出力ストリーム、およびエラーストリームへの直接アクセスをそれぞれ許可します。事前定義された定数STDIN STDOUT およびSTDERR それぞれこれらのストリームを表します。

php:// input

php:// input HTTPリクエスト本文に含まれる生データへの読み取り専用アクセスを許可します。同じデータが$HTTP_POST_RAW-DATAで利用可能であることに注意してください 変数(現在は非推奨です)。ただし、enctype属性が multipart / form-data に設定されている場合、php://inputは使用できません。

php:// output

このラッパーは書き込み専用のストリームを表し、印刷と同様のバッファメカニズムを可能にします およびエコー ステートメント。

php:// fd

このラッパーを介してファイル記述子にアクセスできます。標準ストリームSTDIN、STDOUT、およびSTDERRには、ファイル記述子1、2、および3が割り当てられます。他のすべてのストリームには、増分ファイル記述子が割り当てられます。したがって、php:// fd/5はファイル記述子5を参照します

php:// memory

これは、データを一時的にメモリに保存できるようにする読み取り/書き込みストリームです。 php:// temp ラッパーも同様です。ただし、後者の場合、データはメモリではなく一時ファイルに保存されます。

php:// filter

このラッパーを使用すると、ストリームを開いたときにストリームにフィルターを適用できます。フィルタは、readfile()、file_get_contents()、およびfile()関数で特に役立ちます。

次の例では、コンソール入力は php:// stdinから読み取られます。 php:// stdoutで表示される出力

<?php
$file=fopen("php://stdin","r");
$x=fread($file,10);
echo $x;
$out=fopen("php://stdout","w");
fwrite($out, $x);
fclose($file);
?>

php:// input ストリームラッパーを使用すると、HTTPリクエストから生データをフェッチできます。次の例では、HTMLフォームがPOSTメソッドを使用してPHPスクリプトにデータを投稿します

<html>
<body>
<form action="testscript.php" method="POST">
   <input type="text" name="name">
   <input type="text" name="age">
   <input type ="submit" value="submit">
</form>
</body>
</html>

生のHTTPデータを取得するためのPHPスクリプトは次のとおりです-

<?php
$json = file_get_contents("php://input");
$data = json_decode($json);
print_r($json);
?>

  1. PHP pi()関数

    定義と使用法 pi ()関数は数学定数Πの値を返します。 PHPで定義された事前定義された定数に等しいfloat値3.14159265359を返します--M_PI 構文 pi ( void ) : float パラメータ この関数はパラメータを必要としません 戻り値 PHP pi()関数は、数学定数Πを返し、事前定義された数学定数M-PIと同じです。 M_PIを使用する代わりに、数式でpi()関数を使用できます。 PHPバージョン この関数は、PHPバージョン4.x、PHP 5.x、およびPHP7.xで使用できます。 例 次の例では、円の面積の計算にpi()関数を使用しています。

  2. Javaでストリーミング

    ストリームは、集約操作をサポートするソースからのオブジェクトのシーケンスを表します。ストリームの特徴は次のとおりです- 要素のシーケンス −ストリームは、特定のタイプの要素のセットを順番に提供します。ストリームはオンデマンドで要素を取得/計算します。要素を保存することはありません。 ソース − Streamは、コレクション、配列、またはI/Oリソースを入力ソースとして受け取ります。 集計操作 − Streamは、フィルター、マップ、制限、削減、検索、一致などの集約操作をサポートします。 パイプライン −ほとんどのストリーム操作は、結果をパイプライン化できるようにストリー