-
一重引用符ではなく二重引用符にスラッシュのみを追加するPHP関数はありますか?
json_encode関数を使用して、二重引用符にスラッシュを追加できます。また、「addcslahses」を使用して、特定の文字に「\」を追加することもできます- 例 <?php $str = addcslashes("Hello there!","t"); echo($str); ?> 出力 これにより、次の出力が生成されます- Hello \there! 「addcslashes」関数は、特定の文字の前に円記号が付いた文字列を返すために使用されます。これは大文字と小文字を区別する関数であり、通常、0(nul
-
PHPがトラフィックの多いWebサイトに適しているのはなぜですか?
ウェブサイトが遅い主な理由は、ホストの過負荷です。 他のコンパイル言語よりもPHPを使用する利点は、メンテナンスが容易なことです。 PHPは、HTTPトラフィックを効率的に処理するようにゼロから設計されており、他のコンパイル言語を使用して構築する場合と比較して、構築するものが少なくなります。これに加えて、サーバーを再コンパイルして再起動する必要がないため、変更のマージはより簡単な作業です(コンパイルされたバイナリFastCGIを使用する場合はこれを行う必要があります)。 PHPは、適切に記述されていれば、大幅に拡張できます。その他の制限要因には、使用されるデータベースエンジンが含まれます。
-
PHPを使用してgzipファイルを抽出または解凍するにはどうすればよいですか?
zipファイルは、PHPのgzread関数を使用して解凍または解凍できます。以下は同じ-のコード例です 例 $file_name = name_of/.dump.gz'; $buffer_size = 4096; // The number of bytes that needs to be read at a specific time, 4KB here $out_file_name = str_replace('.gz', '', $file_name); $file = gzopen($file_name, 'rb'); //Op
-
PHPの正規表現で[\S\ s] *はどういう意味ですか?
PHPの正規表現[\S\ s] *は、「新しい行と一致しない」ことを意味します。 PHPでは、/ sフラグを使用して、ドットをすべての文字に一致させることができます- 例 print(preg_match('/^[\S\s]$/s',"hello \n world")); 出力 これにより、次の出力が生成されます- 0 「preg_match」関数は、正規表現を指定された入力文字列と照合するために使用されます。ここでは、「\」が検出されたため、0を返します。
-
本番サーバーでXDebugを有効にすると、PHPの速度が低下しますか?
はい、XDebugのようなデバッガーはPHPサーバーのパフォーマンスを低下させます。これが、デバッガーがサーバー環境に配置されない理由です。不要なオーバーヘッドを回避するために、これらは別の環境にデプロイされます。 デバッグメッセージは、すでに実稼働段階にあるアプリケーションでは表示できません。 デバッグ動作がサーバーに追加されると、デバッグエンジンがPHPプロセスに接続されます。ブレークポイントで停止するメッセージの受信を開始しますが、他のプロセスに高性能の打撃を与え、それによってPHPパーサーを停止するため、これは必須の動作ではありません。 一方、デバッガーがインストールされている場
-
匿名PHP関数の親スコープから変数にアクセスする
「使用」 キーワードを使用して、変数を特定の関数のスコープにバインドできます。 useキーワードを使用して、変数を関数のスコープにバインドします- 例 <?php $message = 'hello there'; $example = function () { var_dump($message); }; $example(); $example = function () use ($message) { // Inherit $message var_dump($message); }; $example();
-
PHPの単一のセットから特定のサイズのすべての組み合わせを生成します
単一のセットから特定のサイズのすべての組み合わせを生成するためのコードは次のとおりです- 例 function sampling($chars, $size, $combinations = array()) { # in case of first iteration, the first set of combinations is the same as the set of characters if (empty($combinations)) { $combinations = $char
-
PHPセッションでのオブジェクトの保存
PHPのserialize()関数は、オブジェクトを格納する前に使用でき、unserialize()関数は、オブジェクトをセッションから取得する必要があるときに呼び出すことができます。 この関数は、特定の値の格納可能な表現をビットのシーケンスに変換します。これは、データをファイルやメモリバッファに保存したり、ネットワーク経由で転送したりできるようにするために行われます。 シリアル化機能を使用してオブジェクトを格納する- session_start(); $object = new sample_object(); $_SESSION['sample'] = serializ
-
PHPreadfileとfile_get_contents
「readfile」関数は、ファイルを出力バッファに直接読み込むPHPの組み込み関数です。ファイルの名前は、パラメーターとして関数に渡されます。データの読み取りに成功した場合に読み取られたバイト数を返します。それ以外の場合はFALSEを返します- 例 <?php // writing file contents on the output // buffer using readfile() function $myfile = @readfile("gfg.txt"); if (!$myfile) { print "Sorry,
-
読み取りと書き込みの両方のためにPHPExcelでExcelファイルを開く方法は?
PHPExcelオブジェクトのソースを認識していないため、PHPExcelで読み取りおよび書き込み用にファイルを開くという概念はありません。ファイルがロードされたソースやファイルの種類に関係なく、ファイルはその名前に基づいて読み取られ、同じ名前で保存されます。このようにして、ファイルは上書きされ、新しい変更がファイルに反映されます。 例 error_reporting(E_ALL); set_time_limit(0); date_default_timezone_set('Europe/London'); set_include_path(get_include_path()
-
PHPで定義された名前空間のリストを取得することは可能ですか?
ファイル1に名前空間ns_1があり、ファイル2に名前空間ns_2がある場合、ファイル1とファイル2がファイル3に含まれていると、名前空間ns_1とns_2がロードされたことを知る方法はありません。 唯一の方法は「class_exists」関数を使用することであり、特定の名前空間を持つクラスのリストは「get_declared_classes」を使用して取得できます。簡単に言えば、取得されたこのデータを使用して、宣言されたすべてのクラス名が与えられた場合に一致する名前空間を見つけることができます- function namespaceExists($namespace) { &n
-
PHPで「@」プレフィックスは何をしますか?
「@」記号は、エラーが画面に表示されないようにします。 PHPは、エラー制御演算子、つまり記号(@)をサポートしています。 PHPの式の前に追加すると、その式を使用したときに生成される可能性のあるエラーメッセージは無視されます。 track_errors属性が有効になっている場合、式によって生成されたエラーメッセージは$php_errormsgという名前の変数に保存されます。この変数は、エラーが発生するたびに上書きされます。 エラーの状態/状態に関連して機能するコードを作成することを常にお勧めします。
-
PHPでDOM要素を反復処理するにはどうすればよいですか?
以下はXMLデータ(入力)- <other data> <foo> <bar></bar> <value/> <pub></pub> </foo> <foo> <bar></bar> <pub></pub> </foo> <foo> <bar></bar&
-
ファイル名がUTF-8の場合、PHP pathinfo()が正しいファイル名を返すようにします
ほとんどのコアPHP関数は、Latin-1以外の文字セットを処理しません。ただし、「pathinfo」の前に「setlocale」を配置すると、UTF-8でエンコードされている場合でも正しいファイル名を返すことができます。 デフォルトでは、「C」ロケールで実行され、CLIスクリプトはデフォルトのutf-8ロケールで実行されます。他の関数を呼び出す前に、サーバーのロケールを「C」から「C.UTF-8」または「en_US.UTF-8」に変更する必要があります。 setlocale(LC_ALL,'en_US.UTF-8'); pathinfo($OriginalName, PAT
-
PHPスクリプトを介して大きなファイルをダウンロードする方法は?
PHPスクリプトを使用して大きなファイルをダウンロードするには、コードは次のとおりです- 例 <?php function readfile_chunked($filename,$retbytes=true) { $chunksize = 1*(1024*1024); // how many bytes per chunk the user wishes to read $buffer = ''; $cnt =0; $handle = fopen($filename,
-
PHPでテキストファイルの最後の5行だけを読み取る方法は?
テキストファイルの最後の5行だけを読み取るには、コードは次のとおりです- 例 $file = file("filename.txt"); for ($i = max(0, count($file)-6); $i < count($file); $i++) { echo $file[$i] . "\n"; } 出力 これにより、次の出力が生成されます- Given that the file has more than 5 lines of text, the last 5 lines of the text file w
-
PHPの文字列から言語を検出する
文字タイプから言語を検出できません。他の方法もありますが、完全な精度を保証するものではありません。 「TextLanguageDetectPearPackage」はまともな精度で使用できます。以下は同じ-のサンプルコードです 例 require_once 'Text/LanguageDetect.php'; $l = new Text_LanguageDetect(); $result = $l->detect($text, 4); if (PEAR::isError($result)) { echo $result->getMessage
-
PHPで、オブジェクト要素を配列に追加するにはどうすればよいですか?
コードは次のとおりです- 例 $object = new stdClass(); $object->name = "My name"; $myArray[] = $object; 出力 これにより、次の出力が生成されます- Suppose myArray already contains ‘a’ and ‘c’, the value of “My name” will be added to it. It becomes Array { a:0, c:1, &ldquo
-
PHPのサブ値でphp多次元配列を並べ替える
「usort」関数を使用して、PHPで多次元配列を並べ替えることができます。ユーザー定義の基準に基づいて配列を並べ替えます- 例 <?php function my_sort($a,$b) { if ($a==$b) return 0; return ($a<$b)?-1:1; } $a=array(4,2,81,63); usort($a,"my_sort"); $arrlength=count($a); for($x=0;$x<$arrlength;$x++) { echo
-
foreachループのオブジェクトタイプとしてのPHPキャスト変数
これは、使用されているIDEによって異なります。たとえば、NetbeansとIntelliJは、コメントで@varの使用を有効にすることができます- /* @var $variable ClassName */ $variable-> 」が検出された後、「$variable」がClassNameのクラスであることを認識します。 さらに、@ returnアノテーションは、returnタイプがClassNameオブジェクトの配列になることを指定するメソッドを使用して作成できます。このデータには、オブジェクトの値をフェッチするforeachループを使用してアクセスできます- function