検索

PHP学習メモその1

Apr 19, 2018 pm 02:25 PM
php勉強ノート

この記事の内容は、一定の参考価値のある PHP 学習ノート 1 に関するものです。必要な友達が参照できるようにします。


リンクをクリックすると、PHP ノートが開きます。

1. PHPフレームワーク


2. 変数

(1) 命名規則

変数は$記号で始まり、その後に変数名が続きます

変数名は文字またはアンダースコアで始まる必要があります文字

変数名には英数字とアンダースコア(A-z、0-9、_)のみを含めることができます

変数名にはスペースを含めることはできません

変数名は大文字と小文字が区別されます($yと$Yは2つの異なる変数です)



注: PHP 変数とステートメントでは大文字と小文字が区別されます。


(2) 変数を宣言する文はなく、初めて値が代入されたときに変数が作成されます。

<?php
//这是PHP程序代码
?>


(3) PHP は弱い型指定言語であり、変数をその値に基づいて正しいデータ型に自動的に変換します。


(4) 変数スコープ(4種類):ローカル、グローバル、静的、パラメータ




ローカル:PHP関数内で宣言されたローカル変数、関数内でのみアクセス可能

グローバル: グローバル変数、すべての関数の外で定義された変数にはグローバル スコープがあります。関数内のグローバル変数にアクセスするには、グローバル キーワードを使用する必要があります


<?php
$txt="Hello world!";
$x=5;
$y=10.5;
?>


<?php 
$x=5; // 全局变量 

function myTest() 
{ 
    $y=10; // 局部变量 
    echo "<p>测试函数内变量:<p>"; 
    echo "变量 x 为: $x"; 
    echo "<br>"; 
    echo "变量 y 为: $y"; 
}  //仅能输出$y的值,不能输出x的值,因为它是全局变量没有函数中使用global关键字

myTest(); 

echo "<p>测试函数外变量:<p>"; 
echo "变量 x 为: $x"; 
echo "<br>"; 
echo "变量 y 为: $y"; //仅能输出$x,不能输出$y
?>

PHP はすべてのグローバル変数を$GLOBALS[index] という名前の配列。インデックスは変数名を保存します。この配列は関数内でアクセスすることも、グローバル変数を更新するために直接使用することもできます。




static: 関数の完了時に関数のローカル変数を削除したくない場合は、static キーワードを使用できます。しかし、それは依然としてローカル変数です。

パラメータ: パラメータはコードを通じて関数に呼び出され、関数の一部として宣言されます。

<?php
$x=5;
$y=10;
 
function myTest()
{
    global $x,$y;
    $y=$x+$y;
/*等同于:
$GLOBALS[&#39;y&#39;]=$GLOBALS[&#39;x&#39;]+$GLOBALS[&#39;y&#39;];
*/}
 
myTest();
echo $y; // 输出 15
?>


3. echo ステートメントと print ステートメント

は両方とも出力ステートメントです。

echo は戻り値なしで 1 つ以上の文字列を出力でき、出力速度は print よりも高速です。


print は 1 つの文字列の出力のみを許可し、戻り値は常に 1 です。

<?php
function myTest($x)
{
    echo $x;
}
myTest(5);
?>
<?php
echo "<h2 id="PHP-nbsp-很有趣">PHP 很有趣!</h2>";//文字是标题格式
echo "Hello world!<br>";
echo "我要学 PHP!<br>";
echo "这是一个", "字符串,", "使用了", "多个", "参数。";//可以输出多个字符串
?>
<?php
print "<h2 id="PHP-nbsp-很有趣">PHP 很有趣!</h2>";
print "Hello world!<br>";
print "我要学习 PHP!";//只允许输出一个字符串
?>


4. 文字列の定義 - PHP EOP

使用規則:

セミコロンが続く必要があります

EOF は他の文字に置き換えることができます。終了マークが開始マークと一致していることを確認してください

終了マークは、先頭のボックスが排他的な行を占め、前後に空白や文字を接続することはできません。開始マークは、引用符なしでも、一重引用符付きでも、二重引用符付きでもかまいません。埋め込み変数とエスケープ記号を解釈するために使用されます。



コンテンツに引用符が埋め込まれている場合はエスケープする必要はありません

<?php
$txt1="学习 PHP";
$txt2="RUNOOB.COM";
$cars=array("Volvo","BMW","Toyota");
/*使用print和echo都可以*/
print $txt1;
print "<br>";
print "在 $txt2 学习 PHP ";
print "<br>";
print "我车的品牌是 {$cars[0]}";
?>



5.データ型

String、Integer、Float、Boolean、Array、Object、NULL


(1) String string:singleまたはdoubleに入れることができます。引用符

(2) 整数型: 整数または負の数値を指定できます。10 進数、16 進数 (0x)、8 進数 (0) の 3 つの形式です。

<?php
$name="runoob";
$a= <<<EOF
    "abc"$name
    "123"
EOF;
// 结束需要独立一行且前后不能空格
echo $a;
?>

var_dump() 関数は、データ型と合計を返します。変数の値。

(3) Float 浮動小数点型: 10 進数、または指数形式 (e は 10 の累乗を表します)

(4) ブール型



(5) Array 配列

<?php 
$x = 5985;
var_dump($x);//输出int(5985)
echo "<br>"; //换行
$x = -345; // 负数
var_dump($x);//int(-345)
echo "<br>"; 
$x = 0x8C; // 十六进制数
var_dump($x);//int(140)
echo "<br>";
$x = 047; // 八进制数
var_dump($x);//int(39)
?>

出力:

配列(3) { [0]=> 文字列(5) 「ボルボ」 [1]=> 文字列(3) 「BMW」 [2]=> 文字列(6) 「トヨタ」


(6) オブジェクト object: オブジェクトのデータ型を宣言する必要があります


まず、class キーワードを使用してクラス オブジェクト (プロパティ、メソッド) を宣言し、クラス内でデータ型を定義してから、データを使用しますインスタンス化の型

<?php 
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
?>
) (7) null 空の値: 値なしまたは型



6、定数

定義 () 関数を設定します。関数の構文は次のとおりです:


<?php
class Car
{
  var $color;
  function Car($color="green") {
    $this->color = $color;//this就是只想当前对象实例的指针,不指向任何其他对象或类
  }
  function what_color() {
    return $this->color;
  }
}
?>
E


このうち、name は定数の名前、value は定数の値、case_insensitive はオプションであり、TRUE の場合は大文字と小文字が区別されます。

定数のデフォルトはグローバル変数です。


7. 文字列操作

(1) Symposium 演算子 ——2 つの文字列値を結合します

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )


(2) strlen() 関数: 戻り文字 文字列の長さ (文字列の数)キャラクター)

(3)strpos() 函数:用于在字符川内查找一个字符或一段指定文本,找到返回第一个匹配字符位置,未找到返回FALSE

<?php 
echo strpos("Hello world!","world"); 
?>


8、运算符

(1)

$x=10;   $y=6; $a="hello";



$x/$y=1.6666666666667

var_dump(intp(10,3));  //输出int(3)



$a.=" world";  //$a="hello world"

==等于

===绝对等于,值和类型都相同

(2)数组运算

<?php
$x = array("a" => "red", "b" => "green"); 
$y = array("c" => "blue", "d" => "yellow"); 
$z = $x + $y; // $x 和 $y 数组合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
?>


(3) 三項演算子: (expr1) ? (expr2) : (expr3)

expr2=expr1の場合、 (expr1) ?として省略可能 : (expr3)(expr1) ? を意味することもあります(expr3)

(4)优先级


<p style="margin-bottom: 7px;"><?php<br/>// 优先级: &&  >  =  >  and<br/>// 优先级: ||  >  =  >  or<br/> <br/>$a = 3;<br/>$b = false;<br/>$c = $a or $b;<br/>var_dump($c);          // 这里的 $c 为 int 值3,而不是 boolean 值 true<br/>$d = $a || $b;<br/>var_dump($d);          //这里的 $d 就是 boolean 值 true <br/>?><br/></p>




以上がPHP学習メモその1の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
セッションを保存するためにデータベースを使用することの利点は何ですか?セッションを保存するためにデータベースを使用することの利点は何ですか?Apr 24, 2025 am 12:16 AM

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

PHPでカスタムセッション処理をどのように実装しますか?PHPでカスタムセッション処理をどのように実装しますか?Apr 24, 2025 am 12:16 AM

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

セッションIDとは何ですか?セッションIDとは何ですか?Apr 24, 2025 am 12:13 AM

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

ステートレス環境(APIなど)でセッションをどのように処理しますか?ステートレス環境(APIなど)でセッションをどのように処理しますか?Apr 24, 2025 am 12:12 AM

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

セッションに関連するクロスサイトスクリプティング(XSS)攻撃からどのように保護できますか?セッションに関連するクロスサイトスクリプティング(XSS)攻撃からどのように保護できますか?Apr 23, 2025 am 12:16 AM

セッション関連のXSS攻撃からアプリケーションを保護するには、次の測定が必要です。1。セッションCookieを保護するためにHTTPonlyとセキュアフラグを設定します。 2。すべてのユーザー入力のエクスポートコード。 3.コンテンツセキュリティポリシー(CSP)を実装して、スクリプトソースを制限します。これらのポリシーを通じて、セッション関連のXSS攻撃を効果的に保護し、ユーザーデータを確保できます。

PHPセッションのパフォーマンスを最適化するにはどうすればよいですか?PHPセッションのパフォーマンスを最適化するにはどうすればよいですか?Apr 23, 2025 am 12:13 AM

PHPセッションのパフォーマンスを最適化する方法は次のとおりです。1。遅延セッション開始、2。データベースを使用してセッションを保存します。これらの戦略は、高い並行性環境でのアプリケーションの効率を大幅に改善できます。

session.gc_maxlifetime構成設定とは何ですか?session.gc_maxlifetime構成設定とは何ですか?Apr 23, 2025 am 12:10 AM

thesession.gc_maxlifettinginttinginphpdethinesthelifsessessiondata、setinseconds.1)it'sconfiguredinphp.iniorviaini_set()。 2)AbalanceSneededToAvoidPerformanceIssues andunexpectedLogouts.3)php'sgarbagecollectionisisprobabilistic、影響を受けたBygc_probabi

PHPでセッション名をどのように構成しますか?PHPでセッション名をどのように構成しますか?Apr 23, 2025 am 12:08 AM

PHPでは、session_name()関数を使用してセッション名を構成できます。特定の手順は次のとおりです。1。session_name()関数を使用して、session_name( "my_session")などのセッション名を設定します。 2。セッション名を設定した後、session_start()を呼び出してセッションを開始します。セッション名の構成は、複数のアプリケーション間のセッションデータの競合を回避し、セキュリティを強化することができますが、セッション名の一意性、セキュリティ、長さ、設定タイミングに注意してください。

See all articles

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

DVWA

DVWA

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

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境