PHP における目立たないトリックのいくつか
目立たない小さなトリックだと言われていますが、実際には、それを知っていることと、それを使用できることは別のことです。マスターになるには、しっかりとした基本スキルが必要です
php -r 'echo str_repeat("ABC",5) に基づいて文字列を繰り返し出力します。 ),"n" ;'
ABCABCABCABCABC
substr
これは、文字デバイスをインターセプトするために使用されます。たとえば、文字列の最初の文字をインターセプトします:
$string = 'abcdefg'
substr($ string,0,1 ) で a を取得しましたが、今では $string[0] を使用することに慣れています。文字列の長さが 7 かどうかを判断する場合は、代わりに Isset($string[6]) が使用されます。同様に、isset は strlen よりも速いと言われているため、この経験は
trim
trim を使用すると、先頭と末尾の空白と末尾の改行を削除するのに時間がかかりました。これを行うように特別に設計されているため、%
trim('%abcdef%',' など) の先頭と末尾にある不要な文字を削除するためのパラメーター リストも受け入れることができるとは予想していませんでした。 '%abcdef%' を削除するには %' )
Continue
このツールを長い間使ってきた後、ある時ジャンプしたいと思うまでは、パラメータがないと常に思っていました。 3 レベルのループから...
ini_set
ネットワーク接続に基づいてプログラムを作成する場合、耐障害性を考慮してソケットのタイムアウトを設定する必要があります。php.ini で定義されているデフォルトの時間は 60 です。
; ソケットベースのストリームのデフォルトのタイムアウト (秒)
; http://php.net/default-socket-timeout
default_socket_timeout = 60
PHP マニュアルでは、ini_set を使用して設定を変更できます。
ini_set('default_socket_timeout',6 );
新しく発見した関数を使用するとき、私の習慣は次のとおりです:
var_dump(ini_set('default_socket_timeout',6));
実行結果プロンプト:
string(2) "60"
えっ?いくつかのマシンで試してみましたが、同じことが起こりました。どうすればよいでしょうか。 PHP マニュアルには次のように書かれています: 戻り値 成功した場合は古い値を返し、失敗した場合は FALSE を返します。 うっかりマニュアルを読みすぎました! posix_killnginx のログ ローテーション スクリプトphp で書かれています。php を更新するために、nginx に新しいログを再生成するように通知します。私が使用した N 台のマシンでは、この関数は正常に動作しました。友人に、マシンは次のように報告しました: 警告: posix_kill() はパラメーター 2 が長く、指定された文字列であることを期待しています 関数のプロトタイプを見てください: bool posix_kill (int $pid, int $sig) 2 番目のパラメーターは次のようにする必要があります私のマシンでは SIGUSR1 が動作しないのはなぜですか? PHP のバージョンが実際には私のものよりも高いのです。 SIGUSR1 に対応しますが、見つかりませんでした。最後に、kill コマンドを調べて、誤って kill -l と入力してしまいました。 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6 ) SIGABRT 7) SIGEMT 8) SIGFPE 9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGURG17) SIGSTOP 18) SIGTSTP 19) シグコント 20) シグホールド21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH29) SIGINFO 30) SIGUSR1 31) SIGUSR2上記はMacの場合ですが、対応するものはLinux の SIGUSR1 の値は実際には異なります。言葉を失います。 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR111 ) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP21) SIGTTIN 22) SIGTTOU 23) SIGURG 24 ) SIGXCPU 25) SIGXFSZ 26)sigvtalrm 27)sigprof 28)sigwinch 29)sigio 30)sigpwr31)sigsys 34)sigrtmin+1 36)sigrtmin+2 37)sigrtmin+338)sigrtmin+4 39)sigrtmin+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+843) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+1348) SIGRTMIN+14 49 ) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-1253) SIGRTMAX -11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-758) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX 異なるシステムを同時にサポートしたい場合はどうすればよいですか?ご判断の通り、php には PHP_OS というアーティファクトがあります。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。
