目次
Variable
変数定義
変数の割り当て
データ型
String
整数
浮動小数点数
ブール型
Array
Object
NULL
リソース
スコープ
グローバル キーワード
static キーワード
ホームページ バックエンド開発 PHPチュートリアル フロントエンドの PHP 変数、データ型、スコープの学習

フロントエンドの PHP 変数、データ型、スコープの学習

Jun 23, 2016 pm 01:20 PM

カタログ [1] 変数 変数定義 変数の割り当て [2] データ型 文字列 整数 浮動小数点数 ブール配列オブジェクト NULL リソース [3] スコープ globalstatic

Variable

変数定義

変数は情報を格納するためのコンテナです、$ 記号で始まり、変数名が続きます。変数名は文字またはアンダースコアで始まる必要があり、大文字と小文字が区別されます

<?php$x=5;//5echo $x;//什么都不输出echo $X;?>
ログイン後にコピー

変数の割り当て

PHP には変数を作成するコマンドがありません。変数は最初に値が割り当てられたときに作成されます

<?php$txt="Hello world!";$x=5;$y=10.5;?>
ログイン後にコピー

データ型

PHPは緩やかに型付けされた言語であるため、PHP に変数のデータ型を伝える必要はありません。PHP は、その値に基づいて変数を正しいデータ型に自動的に変換します。 PHP データ型には、4 つのスカラー型、2 つの複合型、および 2 つの特殊型を含む 8 つの型が含まれます。具体的には: 文字列、整数、浮動小数点数、ブール値、配列、オブジェクト、NULL、リソース

[注] var_dump() は変数のデータ型と値を返します

String

文字列は引用符で囲まれたものであれば何でも構いません テキスト、引用符は単一引用符または二重引用符にすることができます

<?php $x = "Hello world!";//Hello world!echo $x;echo "<br>"; $x = 'Hello world!';//Hello world!echo $x;?>
ログイン後にコピー

<ケース 1> 文字列に引用符が含まれる場合、次の 3 つの解決策があります:

[1] 単一引用符に埋め込まれた二重引用符

[2] 二重引用符に埋め込まれた単一引用符

[3] エスケープ文字 "" を使用します

<?php $str_string1 = '"test"';$str_string2 = "'test'";$str_string3 = '\'test\'';echo $str_string1;echo "<br />";echo $str_string2;echo "<br />";echo $str_string3;?>
ログイン後にコピー

<ケース 2>文字列の引用符が変数に遭遇する場合、2 つの状況があります:

[1] 変数が二重引用符で囲まれている場合、変数は二重引用符で囲まれた内容と連結してください

[2] 変数が単一引用符で囲まれている場合、変数は文字列として出力されます

<?php $test = 1;$str_string1 = ' $test ';$str_string2 = " $test ";$str_string3 = ' "$test" ';$str_string4 = " '$test' ";echo $str_string1;//$testecho "<br />";echo $str_string2;//1echo "<br />";echo $str_string3;//"$test"echo "<br />";echo $str_string4;//'1'?>
ログイン後にコピー

<ケース 3> 文字列が非常に長い場合は、ヒアドキュメント構造メソッドを使用します、最初に区切り文字が文字列 (<<<) を表し、次に識別子 (任意の名前) が (<<<<) の後に指定され、改行の後に文字列が続き、最後にこの識別子の終了文字列が続きます。識別子の前後に余分なスペースが入らないように注意してください。

<?php $str = <<< G123G;echo $str;//123?>
ログイン後にコピー

整数

PHP 整数には、少なくとも 1 桁の数字が必要で、カンマやスペースを含めることはできません。小数点は使用できません。正または負の値を指定でき、整数は次の 3 つの形式で指定できます。 10進数、16進数 基数(接頭辞は0x)または8進数(接頭辞は0)

<?php $x = 5985;//int(5985)var_dump($x);echo "<br>"; $x = -345; // int(-345)var_dump($x);echo "<br>"; $x = 0x11; // int(17)var_dump($x);echo "<br>";$x = 011; // int(9)var_dump($x);?>
ログイン後にコピー

浮動小数点数

PHP浮動小数点数は小数点または指数形式の数値です

<?php $x = 10.365;//float(10.365)var_dump($x);echo "<br>"; $x = 2.4e3;//float(2400)var_dump($x);echo "<br>"; $x = 8E-1;//float(0.8)var_dump($x);?>
ログイン後にコピー

ブール型

PHP Boolean type には true または false (大文字と小文字は区別されません) の 2 つの値しかなく、条件テストによく使用されます。 echoコマンドを使用してBoolean型を出力する場合、trueの場合は「1」が出力され、falseの場合は何も出力されません

<?php     $man = "男";    $flag = $man == "男";//输出1    echo $flag ;    echo "<br />" ;    $flag = $man == "女";//什么都不输出    echo $flag;    var_dump($flag);//bool(false)?>
ログイン後にコピー

Array

PHPの配列は1つの変数に複数の値を格納できます

<?php $cars=array("Volvo","BMW","SAAB");//array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(4) "SAAB" }var_dump($cars);?>
ログイン後にコピー

Object

PHP オブジェクトは、データとそのデータの処理方法に関する情報を格納するデータ型です。 PHP では、オブジェクトを明示的に宣言する必要がありますが、最初にオブジェクトのクラスを宣言する必要があります。これには、class キーワードを使用します。クラスとは、プロパティとメソッドを含む構造です。次に、オブジェクト クラスでデータ型を定義し、このデータ型をクラスのインスタンスで使用します

<?phpclass Car{    var $color;    function Car($color="green") {      $this->color = $color;    }    function what_color() {      return $this->color;    }}function print_vars($obj) {   foreach (get_object_vars($obj) as $prop => $val) {     echo "\t$prop = $val\n";   }}$herbie = new Car("white");echo "\herbie: Properties\n";print_vars($herbie);?>
ログイン後にコピー

NULL

PHP の NULL は空の型であり、大文字と小文字は区別されません。NULL 型には値が 1 つだけあります。変数を表す 値がない、NULL に代入されている、代入されていない、または unset() の場合、これら 3 つの場合、変数は NULL とみなされます

<?php  error_reporting(0); //禁止显示PHP警告提示 $var; var_dump($var);//NULL $var1 = null; var_dump($var1);//NULL $var2 = NULL; var_dump( $var2);//NULL $var3 = "节日快乐!"; unset($var3); var_dump($var3);//NULL?>
ログイン後にコピー

リソース

PHP リソースが作成されますファイルを開く、データ接続、グラフィックス キャンバスなどの特殊な機能によって使用されます。リソースは操作 (作成、使用、解放) できます。リソースが不要になった場合は、速やかに解放する必要があります。リソースの解放を忘れた場合、システムは自動的にガベージ コレクション メカニズムをアクティブにし、ページの実行後にメモリの消費を避けるためにリソースをリサイクルします

<?php$file=fopen("data/webroot/resource/f.txt","r");   //打开文件$con=mysql_connect("127.0.0.1","root","root");  //连接数据库if ($file_handle){    //接着采用while循环(后面语言结构语句中的循环结构会详细介绍)一行行地读取文件,然后输出每行的文字    while (!feof($file_handle)) { //判断是否到最后一行        $line = fgets($file_handle); //读取一行文本        echo $line; //输出一行文本        echo "<br />"; //换行    }}fclose($file_handle);//关闭文件?>
ログイン後にコピー

[注]memory_get_usage() は、PHP によって現在消費されているメモリをバイト単位で取得します

<?php echo $m1 = memory_get_usage(); echo "<br />";$var_string = '123';//320echo $m2 = memory_get_usage()-$m1; echo "<br />";$n = 123;//272echo $m3 = memory_get_usage()-$m1-$m2; echo "<br />";$f = 123.00;//272echo $m4 = memory_get_usage()-$m1-$m2-$m3; echo "<br />";$var_array = array('123');//576echo $m5 = memory_get_usage()-$m1-$m2-$m3-$m4; ?>
ログイン後にコピー
<?php   $string = "就是就是"; var_dump($string);//string(12) "就是就是" echo "<br />"; $string = 9494; var_dump($string);//int(9494)  echo "<br />";?>
ログイン後にコピー

スコープ

PHP には、ローカル (ローカル)、グローバル (グローバル)、静的 (静的) の 3 つの異なる変数スコープがあります

関数の外で宣言された変数にはグローバル スコープがあり、関数の外でのみアクセスできます。;関数内で宣言された変数関数はローカル スコープを持ち、関数内でのみアクセスできます

<?phperror_reporting(0); //禁止显示PHP警告提示$x=5; // 全局作用域function myTest() {  $y=10; // 局部作用域  echo "<p>测试函数内部的变量:</p>";  echo "变量 x 是:$x<br>";  echo "变量 y 是:$y";} //无输出//10myTest();echo "<p>测试函数之外的变量:</p>";echo "变量 x 是:$x<br>";//5echo "变量 y 是:$y";//无输出?>
ログイン後にコピー

グローバル キーワード

関数内のグローバル変数にアクセスするために使用されます

<?php$x=5;$y=10;function myTest() {  global $x,$y;  $y=$x+$y;}myTest();echo $y; // 输出 15?>
ログイン後にコピー

PHP はそれを GLOBALS[index] という名前の配列にも格納します すべてのグローバル変数が含まれており、変数名は添え字で保存されます。この配列は関数内でもアクセスでき、グローバル変数を直接更新するために使用できます

<?php$x=5;$y=10;function myTest() {  $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];} myTest();echo $y; // 输出 15?>
ログイン後にコピー

static キーワード

通常、関数が完了または実行されると、すべての変数が削除されますが、場合によっては、変数を削除しないことが必要な場合があります。ローカル変数。これを実現するには、変数を初めて宣言するときに static キーワードを使用します。関数が呼び出されるたびに、この変数に格納される情報は、関数が最後に呼び出されたときに含まれる情報ですが、この変数は依然として関数のローカル変数であることに注意してください

<?phpfunction myTest() {   static $x=0;   echo $x;   $x++;}myTest();//0echo "<br>";myTest();//1echo "<br>";myTest();//2echo "<br>";myTest();//3echo "<br>";myTest();//4?>  
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

11ベストPHP URLショートナースクリプト(無料およびプレミアム) 11ベストPHP URLショートナースクリプト(無料およびプレミアム) Mar 03, 2025 am 10:49 AM

多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

Instagram APIの紹介 Instagram APIの紹介 Mar 02, 2025 am 09:32 AM

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

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

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

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

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' =>

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

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

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

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

2025 PHP状況調査の発表 2025 PHP状況調査の発表 Mar 03, 2025 pm 04:20 PM

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています

See all articles