[php学習] phpをゼロから学ぶ1
前書き: 2006 年頃、一時期 PHP を勉強し、その時にダウンロード サイトを作成しました。その後、大学院で Java と j2ee を使用したため、近年は PHP も使用されなくなりました。多くの変更が加えられましたが、最大の変更はオブジェクト指向のサポートです。
今、php で何かをする必要があるので、もう一度学習して最初から始めなければなりません!
PHP グローバルキーワード global キーワードは、関数外のグローバル変数にアクセスするために使用されます。 関数 myTest() { グローバル $x,$y; $y=$x+$y;
}
myTest(); $y をエコーします。 ?>
また、PHP はすべてのグローバル変数を $GLOBALS[index] という名前の配列に保存します。添字は変数名として保存され、この配列は関数内でもアクセスでき、グローバル変数を直接更新するために使用できます。
上の例は次のように書き換えることができます。 関数 myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; }
myTest(); $y をエコーします。
?>
エコーとプリントの違い:
- echo - 複数の文字列を出力できます
- print - 1 つの文字列のみを出力でき、常に 1 を返します
var_dump() 関数は、変数のデータ型と値を返します。PHP 定数を設定する
定数を設定するには、define() 関数を使用します。これには 3 つのパラメーターが必要です:
- 最初のパラメータは定数の名前を定義します。
- 2 番目のパラメータは定数の値を定義します。
- オプションの 3 番目のパラメータは定数名の大文字と小文字を区別するかどうかを指定します。デフォルトは false です。
リーリー
定数出力には $ を含める必要はありません
オペレーター 名前 例 結果 == $x == $y $x が $y と等しい場合に true を返します。 === 一致(同一) $x === $y $x が $y に等しく、それらが同じ型である場合に true を返します。 != $x != $y $x が $y と等しくない場合は true を返します。 $x $y $x が $y と等しくない場合は true を返します。 !== 一致しない(全く違う) $x !== $y $x が $y と等しくなく、それらが同じ型ではない場合は true を返します。 > $x > $y $x が $y より大きい場合は true を返します。 $x $x が $y より小さい場合は true を返します。 >= $x >= $y $x が $y 以上の場合に true を返します。 $x $x が $y 以下の場合に true を返します。
数グループ: #配列
$car=array("ボルボ","BWM","ジープ");
var_dump($car);
結果: array(3) { [0]=> string(5) "ボルボ" [1]=> string(3) "BWM" [2]=> string(4) "ジープ" }
foreach:構文
foreach ($配列as $値) {
実行されるコード;
}
例
$colors = array("赤","緑","青","黄");
foreach ($colors を $value) {
echo "$value
";
}
?>
PHP グローバル変数 - スーパーグローバル
PHP のいくつかの事前定義変数は「スーパーグローバル」です。つまり、スコープに関係なく常にアクセス可能であり、特別なことを何もしなくても、どの関数、クラス、またはファイルからでもアクセスできます。
PHP スーパーグローバル変数は次のとおりです:
-
$GLOBALS$_SERVER$_REQUEST$_POST$_GET$_FILES $_ENV$_COOKIE $_セッション
$_SERVER['HTTP_REFERER']:
HTTP Referer はヘッダーの一部であり、ブラウザが Web サーバーにリクエストを送信するときに、通常、Referer がバンドルされ、サーバーが特定のページから接続されていることを報告し、サーバー自体が処理に使用する情報を取得できます。
要素/コード 説明 $_SERVER['PHP_SELF'] 現在実行中のスクリプトのファイル名を返します $_SERVER['GATEWAY_INTERFACE'] サーバーが使用している Common Gateway Interface (CGI) のバージョンを返します $_SERVER['SERVER_ADDR'] ホストサーバーのIPアドレスを返します $_SERVER['SERVER_NAME'] ホストサーバーの名前を返します (www.w3schools.com など) $_SERVER['SERVER_SOFTWARE'] サーバー識別文字列 (Apache/2.2.24 など) を返します $_SERVER['SERVER_PROTOCOL'] 情報プロトコル (HTTP/1.1 など) の名前とリビジョンを返します $_SERVER['REQUEST_METHOD'] ページへのアクセスに使用されるリクエストメソッド (POST など) を返します $_SERVER['REQUEST_TIME'] リクエストの開始時のタイムスタンプ (1377687496 など) を返します $_SERVER['QUERY_STRING'] ページがクエリ文字列を介してアクセスされた場合、クエリ文字列を返します $_SERVER['HTTP_ACCEPT'] 現在のリクエストから Accept ヘッダーを返します $_SERVER['HTTP_ACCEPT_CHARSET'] 現在のリクエストから Accept_Charset ヘッダーを返します (utf-8、ISO-8859-1 など) $_SERVER['HTTP_HOST'] 現在のリクエストから Host ヘッダーを返します $_SERVER['HTTP_REFERER'] 現在のページの完全な URL を返します (すべてのユーザーエージェントがサポートしているわけではないため信頼性がありません) $_SERVER['HTTPS'] スクリプトは安全な HTTP プロトコルを通じてクエリされていますか $_SERVER['REMOTE_ADDR'] ユーザーが現在のページを表示している IP アドレスを返します $_SERVER['REMOTE_HOST'] ユーザーが現在のページを表示しているホスト名を返します $_SERVER['REMOTE_PORT'] Web サーバーと通信するためにユーザーのマシンで使用されているポートを返します $_SERVER['SCRIPT_FILENAME'] 現在実行中のスクリプトの絶対パス名を返します $_SERVER['SERVER_ADMIN'] Web サーバー構成ファイル内の SERVER_ADMIN ディレクティブに指定された値を返します (スクリプトが仮想ホスト上で実行される場合、その仮想ホストに定義された値になります) (someone@w3schools.com など) $_SERVER['SERVER_PORT'] Web サーバーが通信に使用しているサーバー マシンのポート (80 など) を返します $_SERVER['SERVER_SIGNATURE'] サーバー生成ページに追加されるサーバーのバージョンと仮想ホスト名を返します $_SERVER['PATH_TRANSLATED'] ファイルシステムベースの現在のスクリプトへのパスを返します $_SERVER['SCRIPT_NAME'] 現在のスクリプトのパスを返します $_SERVER['SCRIPT_URI'] 現在のページの URI を返します
PHP $_リクエスト
PHP $_REQUEST は収集に使用されます HTML フォームを送信した後のデータ。
例
$name = $_REQUEST['fname']
$name をエコーします。 ?>
PHP $_POST
$name = $_POST['fname']; $name をエコーします。 ?>
html特殊文字 実際のアプリケーションではこのフィルタリングは無効なのでしょうか?
PHPの正規表現: 「+」、「*」、「?」。で、 「+」メタ文字は、その先頭文字がターゲット オブジェクト内で 1 回以上連続して出現する必要があることを規定します。 「*」メタ文字は、その先頭文字がターゲット オブジェクト内で 0 回または連続して複数回出現する必要があることを規定します。 「?」メタキャラクタは、その先頭のオブジェクトがターゲット オブジェクト内に 0 回または 1 回出現する必要があることを指定します。
/ジム{2,6}/
上記の正規表現は、文字 m が一致するオブジェクト内に 2 ~ 6 回連続して出現できることを規定しています。
s: 単一の
スペース文字
(タブ キーや改行文字
を含む) と一致するために使用されます。 S: 単一のスペース文字を除くすべての文字と一致するために使用されます
d: 0 から 9 までの数字と一致するために使用されます。 w: は文字、数字、またはアンダースコア文字 と一致するために使用されます。 W: w に一致しないすべての文字に一致するために使用されます
. : 改行文字を除くすべての文字と一致するために使用されます。
b ロケーターは、一致するパターンが 2 つの境界 (ターゲット文字列の先頭または末尾) のいずれかに出現する必要があることを指定します。 「B」ロケーターは、一致するオブジェクトがターゲット文字列の先頭と末尾の 2 つの境界内に配置される必要があることを規定しています。つまり、一致するオブジェクトをターゲット文字列の先頭または末尾として使用することはできません。 /ボム/ 上記の正規表現パターンは「b」ロケーターで始まるため、ターゲット オブジェクト内の「bomb」または「bom」で始まる文字列と一致します。 /マンブ/
上記の正規表現パターンは「b」ロケーターで終わるため、ターゲット オブジェクト内の「human」、「women」、または「man」で終わる文字列と一致します。
/([a-z][A-Z][0-9])+/ 「()」記号に含まれる内容は、ターゲット オブジェクトにも出現する必要があります。
/[^A-C]/ ^ は否定を表します
http://www.bkjia.com/PHPjc/854422.html
www.bkjia.comtrue

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。

繊維はPhp8.1で導入され、同時処理機能が改善されました。 1)繊維は、コルーチンと同様の軽量の並行性モデルです。 2)開発者がタスクの実行フローを手動で制御できるようにし、I/O集約型タスクの処理に適しています。 3)繊維を使用すると、より効率的で応答性の高いコードを書き込むことができます。

PHPコミュニティは、開発者の成長を支援するための豊富なリソースとサポートを提供します。 1)リソースには、公式のドキュメント、チュートリアル、ブログ、LaravelやSymfonyなどのオープンソースプロジェクトが含まれます。 2)StackOverFlow、Reddit、およびSlackチャネルを通じてサポートを取得できます。 3)開発動向は、RFCに従うことで学ぶことができます。 4)コミュニティへの統合は、積極的な参加、コード共有への貢献、および学習共有への貢献を通じて達成できます。

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません
