ホームページ バックエンド開発 PHPチュートリアル はじめてのPHP入門(2) 共通機能

はじめてのPHP入門(2) 共通機能

Jun 23, 2016 pm 01:11 PM

簡単に参照できるように、いくつかの一般的なライブラリ関数と一般的な構文をここに記録します

1. PHP マニュアル

PHP マニュアルの中国語アドレス http://php.net/manual/zh

2. いくつかの一般的な操作

2.1 文字文字列操作

2.1.1 strpos — 文字列の最初の出現を検索します

Mixed strpos ( string $haystack ,mixed $needle [, int $offset = 0 ] )

haystack の最初の出現を返します。 。

haystack

この文字列で検索します。

needle

needleが文字列でない場合は、整数に変換され、文字の連続値として扱われます。

offset

このパラメータを指定すると、文字列の文字数の開始位置から検索が開始されます。 strrpos() や strripos() とは異なり、このオフセットを負の値にすることはできません。

2.1.2 substr — 文字列の部分文字列を返す

string substr ( string $string , int $start [, int $length ] )

start パラメータと length パラメータ string で指定された文字列の部分文字列を返します。

string

文字列を入力します。

start

start が負でない数値の場合、返される文字列は string の開始位置から始まり 0 からカウントされます。たとえば、文字列「abcdef」では、位置 0 の文字は「a」、位置 2 の文字は「c」などとなります。

戻り値:

start が負の数の場合、返される文字列は文字列の末尾から前方の開始文字から始まります。

文字列の長さがstart以下の場合はFALSEを返します。

2.1.3 str_split — 文字列を配列に変換する

array split ( string $pattern , string $string [, int $limit ] )

文字列を配列に変換します。

string 文字列を入力します。 split_length 各セグメントの長さ。

戻り値:

オプションのsplit_lengthパラメータが指定されている場合、返される配列の各要素は長さsplit_lengthの文字ブロックになり、それ以外の場合は各文字ブロックが単一の文字になります。

split_length が 1 未満の場合は、FALSE を返します。 split_length 引数が string の長さを超える場合、文字列全体が配列の唯一の要素として返されます。

2.1.4explode — 1つの文字列を使用して別の文字列を分割する

array explode ( string $delimiter , string $string [, int $limit ] )

この関数は、Array で構成される文字列を返します。要素は文字列の部分文字列であり、境界点として文字列デリミタによって区切られます。

delimiter

境界線の区切り文字。

string

入力文字列。

limit

limit パラメータが設定されており、それが正の数の場合、返される配列には最大でもlimit要素が含まれ、最後の要素には文字列の残りが含まれます。

limit パラメータが負の数の場合、最後の -limit 要素を除くすべての要素が返されます。

limitが0の場合は1として扱われます。

この関数は文字列で構成される配列を返します。各要素は文字列の部分文字列であり、境界点として文字列区切り文字で区切られます。

戻り値: 区切り文字が空の文字列("")の場合、explode()FALSEを返します。 delimiter に含まれる値が string 内に見つからず、負の制限が使用された場合は、空の配列が返されます。それ以外の場合は、string の 1 つの要素を含む配列が返されます。

2.1.5 preg_split — 正規表現で文字列を分割する

array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )

指定された文字列を正規表現で分割します。

pattern

Search patternを使用する、文字列形式。

subject

入力文字列

limit

指定した場合、limit を除算して得られる部分文字列の最大数は limit となり、返される最後の部分文字列には残りの部分がすべて含まれます。制限値は -1、0、または null は「制限なし」を意味します。PHP 標準として、null を使用してフラグの設定をスキップできます。

flags

flags は、次のフラグの任意の組み合わせにすることができます (ビットごとの OR 演算 | 組み合わせ):

PREG_SPLIT_NO_EMPTY このフラグが設定されている場合、preg_split() は分離された空でない部分を返します。 PREG_SPLIT_DELIM_CAPTURE このフラグが設定されている場合、区切り文字で区切られたパターンで使用されている括弧式がキャプチャされて返されます。 PREG_SPLIT_OFFSET_CAPTURE このフラグが設定されている場合、一致が発生するたびに文字列オフセットが戻り値に追加されます。これにより、返された配列内の各要素が 0 番目の最初の要素から始まる要素になるように変更されます。は分離された部分文字列であり、最初の要素はサブジェクト内の部分文字列のオフセットで構成される配列です。 戻り値: パターン境界を使用してサブジェクトを分割して得られる部分文字列から構成される配列を返します。

2.2 配列操作

2.2.1 array — 新しい配列を作成します

array array ([mixed $...] )

配列を作成します。

カンマで区切られた「index => value」という構文でインデックスと値を定義します。インデックスには文字列または数値を指定できます。インデックスを省略した場合は、0 から始まる整数のインデックスが自動生成されます。インデックスが整数の場合、次に結果として得られるインデックスは、これまでの最大の整数インデックス + 1 になります。 2 つの同一のインデックスが定義されている場合、後者のインデックスが前のインデックスを上書きすることに注意してください。

戻り値:パラメータに基づいて作成された配列を返します。 => 演算子を使用してパラメータにインデックスを付けることができます。

2.2.2 array_push — 1 つ以上の要素を配列の末尾にプッシュする (プッシュ)

int array_push ( array &$array ,mixed $var [,mixed $... ] )

array_push() 配列をスタックとして扱い、渡された変数を配列の最後にプッシュします。配列の長さは、スタックにプッシュされた変数の数に応じて増加します。

array 入力配列。 var プッシュされる値。 戻り値: 処理後の配列の要素数を返します。

2.3 インデックス設定ファイル/ヘッダファイルの追加

2.3.1 include文は指定されたファイルをインクルードして実行します

ディレクトリがない場合(ファイル名のみ)、インクルードされたファイルはまずパラメータで指定されたパスに従って検索されます。が与えられた場合、include_path で指定されたディレクトリに従って検索します。ファイルが include_path の下に見つからない場合、include は最終的に、呼び出し元のスクリプト ファイルが配置されているディレクトリと現在の作業ディレクトリを検索します。 include コンストラクトは、ファイルが最後に見つからない場合に警告を発行します。これは、致命的なエラーを発行する require とは異なります。

パスが定義されている場合、それが絶対パス (ドライブ文字で始まる、または Windows では、Unix/Linux では / で始まる) か、現在のディレクトリへの相対パス (. または .. で始まる) であるかに関係なく、 include_path は完全に無視されること。たとえば、ファイルが ../ で始まる場合、パーサーは現在のディレクトリの親ディレクトリでファイルを検索します。

ファイルがインクルードされると、そのファイルに含まれるコードは、インクルードが配置されている行の変数スコープを継承します。その時点から、呼び出し側ファイルのその行で使用可能な変数は、呼び出されたファイルでも使用できるようになります。ただし、インクルード ファイルで定義されたすべての関数とクラスにはグローバル スコープがあります。

2.3.2 require ステートメントは、指定されたファイルをインクルードして実行します

require と include は、失敗の処理方法を除いて、ほぼまったく同じです。 requireは、エラーが発生したときにE_COMPILE_ERRORレベルのエラーを生成します。つまり、スクリプトは中止され、インクルードは警告 (E_WARNING) を生成するだけで、スクリプトは実行を継続します。

3. よく使われるライブラリ関数

3.1 Time

3.1.1 time - 現在のUnixタイムスタンプを返す

int time (void)

以降のUnixエポックを返す1970 GMTの数2000 年 1 月 1 日 (00:00:00) から現在時刻までの秒数。

3.1.2 date — ローカル時刻/日付をフォーマットします

string date ( string $format [, int $timestamp ] )

指定されたフォーマット文字列 string に従って生成された整数のタイムスタンプを返します。タイムスタンプが指定されていない場合は、ローカルの現在時間が使用されます。つまり、タイムスタンプはオプションであり、デフォルト値は time() です。

format 特定の形式: http://php.net/manual/zh/function.date.php

3.1.3 date_default_timezone_get — すべての日付と時刻の関数で使用されるデフォルトのタイムゾーンを取得します。スクリプト

string date_default_timezone_get ( void )

この関数はデフォルトのタイムゾーンを返します

3.1.4 date_default_timezone_set — スクリプト内のすべての日付と時刻の関数のデフォルトのタイムゾーンを設定します

ol date_default_timezone_set ( string $ timezone_identifier )

すべての日時関数に使用されるデフォルトのタイムゾーンを設定します。

timezone_identifier

UTC やアジア/上海などのタイムゾーン識別子 (中国本土の場合はこれを選択します)。法的な識別子のリストについては、http://php.net/manual/zh/timezones.php

を参照してください。

戻り値: timezone_identifier パラメーターが無効な場合は FALSE を返し、それ以外の場合は TRUE を返します。

3.2 JSON形式の操作

3.2.1 json_encode — 変数のJSONエンコード

string json_encode (mixed $value [, int $options = 0 [ 、 int $ Depth = 512 ] ] )

value の JSON 形式を返します

value

エンコードされる値は、リソースタイプを除く任意のデータ型にすることができます。この関数は、UTF-8 でエンコードされたデータのみを受け入れることができます

オプション

バイナリマスク定数。詳細は http://php.net/manual/zh/json.constants.php を参照してください

深さ

最大の深さを設定します。 0 より大きくなければなりません。

戻り値: 成功した場合は JSON エンコードされた文字列を返し、失敗した場合は FALSE を返します。

3.2.2 json_decode - JSON形式の文字列をデコードする

mixed json_decode ( string $json [, bool $assoc = false [, int $ Depth = 512 [, int $options = 0]] ] )

JSON形式の文字列を受け入れてPHP変数に変換します

json デコードするjson文字列形式の文字列。この関数は UTF-8 でエンコードされたデータのみを受け入れることができます assoc このパラメータが TRUE の場合、 object の代わりに array を返します。 深さ 最大深さを設定します。 0 より大きくなければなりません。 オプション バイナリマスク定数。 JSON_BIGINT_AS_STRING のみをサポートします

3.3 ファイル操作

3.3.1 fopen — ファイルまたは URL を開きます

リソース fopen ( string $filename , string $mode [ , bool $use_include_path = false [ 、リソース$コンテキスト]] )

fopen() filename で指定された名前リソースをストリームにバインドします。

filename

filename が「scheme://...」の形式である場合、それは URL として扱われ、PHP はこのパターンを処理するためのプロトコル ハンドラー (ラッパー プロトコルとも呼ばれます) を検索します。ラッパー プロトコルがそのプロトコルに登録されていない場合、PHP はスクリプト内の潜在的な問題をチェックし、通常のファイル名として filename の実行を続行するのに役立つメッセージを発行します。

PHP が filename がローカル ファイルを指定していると判断した場合、そのファイルのストリームを開こうとします。ファイルは PHP からアクセスできる必要があるため、ファイル アクセス許可でこのアクセスが許可されていることを確認する必要があります。セーフ モードまたは open_basedir がアクティブ化されている場合は、さらに制限が適用されます。

mode

mode パラメータは、ストリームに必要なアクセスのタイプを指定します。次のとおりです:

fopen() モードの可能な値のリスト モードの説明
'r' ファイル ポインタをファイル ヘッダーにポイントして、読み取り専用モードで開きます。
'r+' 読み取りおよび書き込みモードで開き、ファイル ポインタをファイル ヘッダーにポイントします。
'w' 書き込みモードで開き、ファイル ポインタをファイル ヘッダーにポイントし、ファイル サイズをゼロに切り捨てます。ファイルが存在しない場合は、作成してみてください。
'w+' 読み取りおよび書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントし、ファイル サイズをゼロに切り捨てます。ファイルが存在しない場合は、作成してみてください。
'a' 書き込みモードで開き、ファイル ポインタをファイルの末尾に指します。ファイルが存在しない場合は、作成してみてください。
'a+' 読み取りおよび書き込みモードで開き、ファイル ポインタをファイルの末尾に指します。ファイルが存在しない場合は、作成してみてください。
'x' ファイル ポインタをファイル ヘッダーにポイントして、書き込み用に作成して開きます。ファイルが既に存在する場合、fopen() 呼び出しは失敗して FALSE を返し、E_WARNING レベルのエラー メッセージを生成します。ファイルが存在しない場合は、作成してみてください。これは、基礎となる open(2) システム コールに O_EXCL|O_CREAT フラグを指定するのと同じです。
'x+' 読み取り/書き込みモードで作成およびオープンされ、その他の動作は 'x' と同じです。

use_include_path

include_path 内のファイルも検索する必要がある場合は、オプションの 3 番目のパラメーター use_include_path を '1' または TRUE に設定できます。

context

Context

戻り値:

オープンに失敗した場合、この関数はFALSEを返します。

エラーメッセージ: オープンに失敗すると、E_WARNING エラーが生成されます。エラーは @ を使用してマスクできます。

3.3.2 fgets — ファイルポインタから行を読み取る

string fgets ( resource $handle [, int $length ] )

ファイルポインタから行を読み取ります。

handle

ファイルポインタは有効でなければならず、fopen() または fsockopen() によって正常にオープンされた (そして fclose() によってクローズされていない) ファイルを指している必要があります。

length

handle が指すファイルから 1 行を読み込み、最大 length - 1 バイトの長さの文字列を返します。改行文字 (戻り値に含まれる)、EOF、または長さ - 1 バイト (いずれか最初に発生した方) が読み取られたときに停止します。長さが指定されていない場合、デフォルトは 1K、つまり 1024 バイトになります。

戻り値:

ポインタハンドルが指すファイルから length - 1 バイトを読み込んだ後の文字列を返します。 ファイル ポインターにデータがなくなった場合は、FALSE を返します。

エラーが発生した場合はFALSEを返します。

3.3.3 fread — ファイルの読み取り (バイナリファイルに対して安全)

string fread ( resource $handle , int $length )

fread() ファイルポインタハンドル長バイトまで読み取ります。 この関数は、次の状況に遭遇すると、ファイルの読み取りを停止します:

  • length バイトが読み取られた
  • ファイルの終わり (EOF) に達した
  • ハンドル

    ファイル システム ポインター。通常は fopen() によって使用されます。作成されたリソース。

    length

    最大 length バイトを読み取ります。

    戻り値: 読み取った文字列を返すか、失敗した場合はFALSEを返します。

    3.3.4 fwrite — ファイルに書き込む (バイナリファイルには安全)

    int fwrite ( resource $handle , string $string [, int $length ] )

    fwrite () handful 内容の文字列がファイル ポインタ ハンドルに書き込まれます。

    handle

    ファイルシステムポインタは、通常は fopen() によって作成されるリソースです。

    string

    書き込まれる文字列

    Ength

    length が指定されている場合、length バイトが書き込まれたとき、または string が書き込まれたとき、どちらか先に遭遇した時点で書き込みが停止します。

    戻り値: fwrite() 書き込まれた文字数、またはエラーが発生した場合はFALSEを返します。

    3.3.5 fclose - 開いているファイルポインターを閉じる

    bool fclose (resource $handle)

    handle が指すファイルを閉じます。

    handle

    ファイルポインタは有効であり、fopen() または fsockopen() 経由で正常に開かれている必要があります。

    戻り値: 成功した場合はTRUE、失敗した場合はFALSEが返されます。

    3.3.6 file_get_contents — ファイル全体を文字列に読み込みます

    string file_get_contents ( string $filename [, bool $use_include_path = false [, resource$context [, int $offset = - 1 [, int $マックスレン ]]]] )

    file() と同じですが、file_get_contents() がファイルを文字列に読み取る点が異なります。 length maxlen の内容は、パラメータ offset で指定された位置から読み込まれます。失敗すると、file_get_contents()FALSE を返します。

    この関数では、ファイルを開いたり、ファイル ストリームを閉じたりする必要はありません。とても便利。

    file_get_contents() 関数は、ファイルの内容を文字列に読み取るための推奨メソッドです。オペレーティング システムがサポートしている場合は、パフォーマンスを向上させるためにメモリ マッピング テクノロジも使用されます。

    特殊文字 (スペースなど) を含む URL を開きたい場合は、URL エンコードに urlencode() を使用する必要があります。

    パラメータ 説明
    path 必須。読み込むファイルを指定します。
    include_path オプション。 include_path 内のファイルも検索したい場合は、このパラメータを「1」に設定できます。
    コンテキスト

    オプション。ファイルハンドルの環境を指定します。

    context は、ストリームの動作を変更できるオプションのセットです。 null が使用された場合、それは無視されます。

    開始 オプション。ファイル内の読み取りを開始する位置を指定します。このパラメータは PHP 5.1 の新しいパラメータです。
    max_length オプション。読み取るバイト数を指定します。このパラメータは PHP 5.1 の新しいパラメータです。

    例:

    $homepage = file_get_contents('http://www.example.com/ ');
    echo $homepage;
    ?>


    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

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

    AI Clothes Remover

    AI Clothes Remover

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

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    AI Hentai Generator

    AI Hentai Generator

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

    ホットツール

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無料のコードエディター

    SublimeText3 中国語版

    SublimeText3 中国語版

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

    ゼンドスタジオ 13.0.1

    ゼンドスタジオ 13.0.1

    強力な PHP 統合開発環境

    ドリームウィーバー CS6

    ドリームウィーバー CS6

    ビジュアル Web 開発ツール

    SublimeText3 Mac版

    SublimeText3 Mac版

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

    PHPロギング:PHPログ分析のベストプラクティス PHPロギング:PHPログ分析のベストプラクティス Mar 10, 2025 pm 02:32 PM

    PHPロギングは、Webアプリケーションの監視とデバッグ、および重要なイベント、エラー、ランタイムの動作をキャプチャするために不可欠です。システムのパフォーマンスに関する貴重な洞察を提供し、問題の特定に役立ち、より速いトラブルシューティングをサポートします

    Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

    Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

    PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

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

    Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

    Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

    Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

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

    PHPにおける後期静的結合の概念を説明します。 PHPにおける後期静的結合の概念を説明します。 Mar 21, 2025 pm 01:33 PM

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

    フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 フレームワークのカスタマイズ/拡張:カスタム機能を追加する方法。 Mar 28, 2025 pm 05:12 PM

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

    See all articles