php内置函数实例教程,内置函数实例教程
有大小写转换相关函数
strtolower()
strtoupper()
ucfirst()
ucword()
文本html标签处理函数
nl2br()
htmllentities()
htmlspecialchars()
stripslashes()
strip_tags()
number_format()
strrev()
md5()
//转换成小写
$a='www.jb51.net';
echo strtolower($a);
//结果:www.jb51.net
//转换成大写
$a='www.jb51.net';
echo strtoupper($a);
//结果:WWW.jb51.net
//首字母大写
$a='www.jb51.net';
echo ucfirst($a);
//结果:Www.jb51.net
//每个单词首字母大写
$a='i love you';
echo ucword($a);
//结果:I Love You
/*
提示:大家都知道大小写,认为小写和大写有区别吗,但是为什么要区分大小写呢
在win系统下php大小写不严格 但是在linux系统下就严禁拉 大小写不能乱写
比如
在自动加载类的时候
function _autoload($className){
include strtolower($className).'.class.php';
}
$obj= new MyClass;
这样就加载myclass.class.php
因为文件名常是小写那么必须转换小写
?>
*/
//nl2br把空格转换成实体
因为一般在浏览器里显示的换行都是
例如在表单留言本里必须要转换不然折行不成功 再多的空格都任务是一个空格
$a='
i
love
you
';
echo $a;
echo nl2br($a);
结果1:i love you
结果2:
i
love
you
//表单提交如果你不进行html标签处理那么就会直接显示样式或者js代码直接运行
/*
当你输入
www.jb51.net
一提交就出现是一号大字体
但是你原来是想要
www.jb51.net结果的
所以要处理下
当输入<script>alert('www.jb51.net')</script>
一提交就会运行javascript
这样不好 必须处理下来防止黑客找到你攻击的入口
表单默认提交方式是get
*/
//当你输入www.jb51.net
echo htmlspecialchars($_GET['title']);//过滤了
结果:www.jb51.net
>
その他、ソースコードを確認すると、 コピーされた記事自体にタグ スタイルが含まれている場合があります。ページ レイアウトが乱れ、CSS の競合が発生する可能性があります。
htmllentities() 関数と htmlspecialchars() の逆の使用方法については説明しません。
そのタグを保持する必要がある場合は、strip_tags() 関数を使用できます echo Stripe_tags($_GET['title'],'
一提交就出现是一号大字体
但是你原来是想要
www.jb51.net结果的
所以要处理下
当输入<script>alert('www.jb51.net')</script>
一提交就会运行javascript
这样不好 必须处理下来防止黑客找到你攻击的入口
表单默认提交方式是get
*/
//当你输入www.jb51.net
echo htmlspecialchars($_GET['title']);//过滤了
结果:www.jb51.net
>
その他、ソースコードを確認すると、 コピーされた記事自体にタグ スタイルが含まれている場合があります。ページ レイアウトが乱れ、CSS の競合が発生する可能性があります。
htmllentities() 関数と htmlspecialchars() の逆の使用方法については説明しません。
そのタグを保持する必要がある場合は、strip_tags() 関数を使用できます echo Stripe_tags($_GET['title'],'
所以要处理下
当输入<script>alert('www.jb51.net')</script>
一提交就会运行javascript
这样不好 必须处理下来防止黑客找到你攻击的入口
表单默认提交方式是get
*/
//当你输入
www.jb51.net
echo htmlspecialchars($_GET['title']);//过滤了
结果:
www.jb51.net
その他、ソースコードを確認すると、 コピーされた記事自体にタグ スタイルが含まれている場合があります。ページ レイアウトが乱れ、CSS の競合が発生する可能性があります。
htmllentities() 関数と htmlspecialchars() の逆の使用方法については説明しません。
そのタグを保持する必要がある場合は、strip_tags() 関数を使用できます echo Stripe_tags($_GET['title'],'
/* この php 関数 stripslashes を使用できますか? () 結果: 123.465.789, 23 echo $b= md5($a); $ _SERVER[ 'SERVER_PORT']
str_replace str_replace( "
substr(string string,int start [int length]) startで指定された位置から始まる長さの文字列を返します preg_replace は正規表現の置換を実行します preg_match(string pattern, string subject [, arraymatches [, int flags]]) -- 正規表現のマッチング 1.sys_getloadavg() sys_getloadavt() はシステムの負荷ステータスを取得できます。この関数は 3 つの要素を含む配列を返します。各要素は過去 1、5、15 分間のシステムの平均負荷を表します。 過剰な負荷によってサーバーをクラッシュさせるのではなく、システム負荷が非常に高いときにスクリプトを積極的に終了させる方が、この機能を実現しやすくするために使用されます。 残念ながら、この機能は Windows では無効です。 Pack() は、md5() によって返された 32 ビットの 16 進文字列を 16 ビットのバイナリ文字列に変換できるため、ストレージ領域を節約できます。 cal_days_in_month() は、指定された月の日数を返すことができます。 WordPress 開発者は、_e() と同様にこの関数をよく目にします。これら 2 つの関数は同じ機能を持ち、gettext() 関数と組み合わせて使用することで Web サイトの多言語化を実現できます。詳細については、PHP マニュアルの該当部分を参照してください。 ページを送信する前に、ユーザーのブラウザで何ができるかを確認できたら便利だと思いませんか? get_browser() はユーザーのブラウザの種類とブラウザでサポートされている関数を取得できますが、まず関数の参照ファイルとして機能する php_browscap.ini ファイルが必要です。 この関数によるブラウザの機能の判断は、このタイプのブラウザの一般的な特性に基づいていることに注意してください。たとえば、ユーザーがブラウザーで JavaScript サポートをオフにしている場合、関数はこれを知る方法がありません。ただし、この関数はブラウザの種類と OS プラットフォームを非常に正確に判断します。 6. debug_print_backtrace() これはデバッグに使用される関数で、コード内の論理エラーを見つけるのに役立ちます。この関数を理解するために、例を見てみましょう: 7.メタフォン() この関数は単語のメタフォン値を返します。同じ発音の単語は同じメタフォン値を持ちます。つまり、この関数は 2 つの単語の発音が同じかどうかを判断するのに役立ちます。ただし、中国語には無効です。 8. ナットソート() natsort() は自然な並べ替えで配列を配置できます。例を見てみましょう: 9.レーベンシュタイン()
Levenshtein() は 2 つの単語間の「距離」を示します。ある単語を別の単語に変更する場合に、挿入、置換、削除する必要がある文字の数がわかります。例を見てみましょう:
foreach (glob(“*.php”) as $file) { 「$filen」をエコーします ');結果を送信する ソースコードを確認すると、
入力 i love 'jb51' を追加します
送信結果は、バックスラッシュがエスケープされた i love 'jb51' になります
エスケープをキャンセルするには
echotripslashes($_GET['title']);
結果は、「jb51」が好きです
このような HTML タグが含まれている場合はどうなるでしょう
プロトタイプ出力が必要な場合はどうすればよいですか? 2 つの関数を組み合わせて、すでに述べたことを使用できます
echo htmlspecialchars(stripslashes($_GET ['title']));
結果: 「jb51」が大好きです
//number_format() この関数は通貨の書式設定関数です。国によって習慣が異なるため、必要な通貨の表示は通常異なります。
1000 分の 1 を区切るにはカンマを使用します。数字を保持し、人称代名詞にはドットを使用します。
この関数の使用法は非常に簡単です
number_format($money、保持する小数点の数、「小数点の区切り方」、「小数点の区切り方」 1000 分の 1)
$price='123465789.233';
echonumber_format($money,2,'.' ,',');//中華風
結果: 123,465,789.23
//strrev() は文字列を反転します
$str='http://www.jb51.net'
結果: moc.tenwii.www//:ptth
//md5 は暗号化です。ハッカーを防ぐためにユーザー名とパスワードを暗号化する必要があります
組み込み関数は、PHP が提供する関数であり、これらの関数を使用して多くの機能を実現できます。
is_int、is_integer、is_long、変数が整数かどうかを判断します
is_float、is_double、is_real、変数が浮動小数点型かどうかを判断します
is_bool は変数がブール型かどうかを判断します
is_string は変数が文字列であるかどうかを決定します
is_array は変数が配列型であるかどうかを決定します
is_resource は変数がリソースタイプであるかどうかを決定します
is_object は変数がオブジェクトかどうかを判断します
is_null は変数が null かどうかを決定します
$_SERVER['SCRIPT_NAME'] は /mantis/test.php、相対パスを返します。
__FILE__ はファイル D:Projectsmantistest.php の絶対パスを返します
$_SERVER['HTTP_X_FORWARDED_PROTO']
$_SERVER["REQUEST_URI"] URI は、アクセスするページを指定するために使用されます
$GLOBALS は、すべての変数を含むグローバル組み合わせ配列です。変数の名前は配列のキーです。
implode は文字を使用して配列要素を文字列にリンクします
$_SERVER['SERVER_NAME'] 現在のスクリプトが配置されているサーバーのホスト名
$_SERVER ['HTTP_HOST' ] ドメイン名
$_SERVER['SERVER_ADDR'] 現在のスクリプトが配置されているサーバーの IP アドレス
文字列の先頭と末尾の空白文字を削除するためにトリム
basename ファイル名の部分を返します
dirname 戻り値ディレクトリ部分
krsort — 配列をキー名で逆順にソート
set_time_limit()スクリプトの最大実行時間を設定
time() は現在の UNIX タイムスタンプを返します
is_string() は変数が文字列かどうかを判断します
is_bool
is_Interter
$_SERVER['LOCAL_ADDR'] IIS7でサーバーのIPアドレスを取得するために使用されます
$_SERVER['REMOTE_ADDR'] ブラウザユーザーの IP アドレス
array_pad — 配列を指定された長さまで値でパディングします
memory_get_usage() PHP に割り当てられたメモリの量を返します
spl_autoload_register __autoload() 関数を登録します
ob_get_contents() 出力バッファの内容を返します
strto lower () 文字は大文字に変換されます
extension_loaded('zlib') は拡張機能がロードされているかどうかを確認します
ini_get は php.ini の設定項目の値を返します
ini_set は php.ini の設定項目の値を設定します, ini_set("memory_limit",'256M' ); 値はスクリプトの実行中にのみ有効になります
PHP_EOL PHP ラインターミネータ
ceil() 最も近い桁に丸める
floor() 最も近い桁に丸める
round() 丸める
10 非常に便利な珍しい PHP 組み込み関数
2.パック()
3. cal_days_in_month()
4. _()
5.get_browser()
出力:
#0 recur() が [C:htdocsphp_stuffindex.php:8] で呼び出されました#1 iterate() が [C:htdocsphp_stuffindex.php:25] で呼び出されました #0 recur() が [C: htdocsphp_stuffindex.php:8]
#1 iterate() は [C:htdocsphp_stuffindex.php:21] で呼び出されます
#2 recur() は [C:htdocsphp_stuffindex.php:8] で呼び出されます
#3 iterate() は [C:htdocsphp_stuffindex.php:21] で呼び出されます:htdocsphp_stuffindex.php:25]
#0 recur() が [C:htdocsphp_stuffindex.php:8] で呼び出されました
#1 iterate() が [C:htdocsphp_stuffindex.php:21] で呼び出されました
#2 recur() が [ C:htdocsphp_stuffindex.php:8]
#3 iterate() が [C:htdocsphp_stuffindex.php:21] で呼び出されます
#4 recur() が [C:htdocsphp_stuffindex.php:8] で呼び出されます
#5 iterate() が呼び出されます[C:htdocsphp_stuffindex.php:25]
出力:
# Array# (# [0] => 100個のリンゴ
# [1] => 110個のリンゴ
# [2] => 5個のリンゴ
# [3] => 55 apples
# )
natsort($items);
print_r($items);
# 出力:
# Array
# (
# [2] => 5 個のリンゴ
# [3] => 55 個のリンゴ
# [0] => リンゴ 100 個
# [1] => リンゴ 110 個
# )
$dictionary = array(“php”, “javascript”, “css”);
glob() を使用すると、opendir()、readdir()、closedir() を使ってファイルを検索するのが愚かに感じられます。 }
本当

PHPSESSIONの障害の理由には、構成エラー、Cookieの問題、セッションの有効期限が含まれます。 1。構成エラー:正しいセッションをチェックして設定します。save_path。 2.Cookieの問題:Cookieが正しく設定されていることを確認してください。 3.セッションの有効期限:セッションを調整してください。GC_MAXLIFETIME値はセッション時間を延長します。

PHPでセッションの問題をデバッグする方法は次のとおりです。1。セッションが正しく開始されるかどうかを確認します。 2.セッションIDの配信を確認します。 3.セッションデータのストレージと読み取りを確認します。 4.サーバーの構成を確認します。セッションIDとデータを出力し、セッションファイルのコンテンツを表示するなど、セッション関連の問題を効果的に診断して解決できます。

session_start()への複数の呼び出しにより、警告メッセージと可能なデータ上書きが行われます。 1)PHPは警告を発し、セッションが開始されたことを促します。 2)セッションデータの予期しない上書きを引き起こす可能性があります。 3)session_status()を使用してセッションステータスを確認して、繰り返しの呼び出しを避けます。

PHPでのセッションライフサイクルの構成は、session.gc_maxlifetimeとsession.cookie_lifetimeを設定することで達成できます。 1)session.gc_maxlifetimeサーバー側のセッションデータのサバイバル時間を制御します。 0に設定すると、ブラウザが閉じているとCookieが期限切れになります。

データベースストレージセッションを使用することの主な利点には、持続性、スケーラビリティ、セキュリティが含まれます。 1。永続性:サーバーが再起動しても、セッションデータは変更されないままになります。 2。スケーラビリティ:分散システムに適用され、セッションデータが複数のサーバー間で同期されるようにします。 3。セキュリティ:データベースは、機密情報を保護するための暗号化されたストレージを提供します。

PHPでのカスタムセッション処理の実装は、SessionHandlerInterfaceインターフェイスを実装することで実行できます。具体的な手順には、次のものが含まれます。1)CussentsessionHandlerなどのSessionHandlerInterfaceを実装するクラスの作成。 2)セッションデータのライフサイクルとストレージ方法を定義するためのインターフェイス(オープン、クローズ、読み取り、書き込み、破壊、GCなど)の書き換え方法。 3)PHPスクリプトでカスタムセッションプロセッサを登録し、セッションを開始します。これにより、データをMySQLやRedisなどのメディアに保存して、パフォーマンス、セキュリティ、スケーラビリティを改善できます。

SessionIDは、ユーザーセッションのステータスを追跡するためにWebアプリケーションで使用されるメカニズムです。 1.ユーザーとサーバー間の複数のインタラクション中にユーザーのID情報を維持するために使用されるランダムに生成された文字列です。 2。サーバーは、ユーザーの複数のリクエストでこれらの要求を識別および関連付けるのに役立つCookieまたはURLパラメーターを介してクライアントに生成および送信します。 3.生成は通常、ランダムアルゴリズムを使用して、一意性と予測不可能性を確保します。 4.実際の開発では、Redisなどのメモリ内データベースを使用してセッションデータを保存してパフォーマンスとセキュリティを改善できます。

APIなどのステートレス環境でのセッションの管理は、JWTまたはCookieを使用して達成できます。 1。JWTは、無国籍とスケーラビリティに適していますが、ビッグデータに関してはサイズが大きいです。 2.cookiesはより伝統的で実装が簡単ですが、セキュリティを確保するために慎重に構成する必要があります。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

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

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ホットトピック









