1. 概要
PHP は弱い型指定言語ですが、それでも場合によっては型変換が必要になります。型変換、変数定義、変数代入について書いていきます。
PHP での型変換は C 言語と同じで、変数の前に括弧で囲んだ型名を追加するだけです。
<?php//类型转换 说明:使用操作符转换变量的时候,不会改变原有的值,而使用settype函数转换时,改变了原有的值$num = '3.1415926r';echo '使用(integer)操作符转换变量$num类型:'. (integer)$num;echo '<p>';echo '输出变量$num的值:'. $num;echo '<p>';echo '使用settype函数转换变量$num类型结果:'. settype($num,'integer');echo '<p>';echo '输出变量$num的值:'. $num;echo '<p>';?>settype() 関数は、指定された変数を指定されたデータ型に変換できます。
PHP には、変数が指定された型であるかどうかを検出するために使用できる関数がいくつかあります。たとえば、ブール型であるかどうかを検出する is_bool()、文字列型であるかどうかを検出する is_string() などです。等
定数は、値が変更されない量として理解できます。定数値を定義した後は、スクリプト内の他の場所で変更することはできません。 構文は次のとおりです。 3 つのパラメータは、定数名 (必須)、定数値 (必須)、大文字と小文字を区別するかどうか (オプション) です。定数を取得するには 2 つの方法があります。1 つ目は変数名を使用して直接取得する方法で、2 つ目は constant() 関数を使用して取得する方法です。定数が定義されているかどうかを確認するには、defined(stringName) 関数を使用できます。この関数は、成功した場合は true を返し、それ以外の場合は false を返します。
<?php//定义常量:define(),获取常量的值:constant(),判断常量是否被定义:defined()define('Message','常量的值');echo Message. '<br>';define('count1','常量的值2');echo count1;$name = 'count1';echo constant($name). '<br>'; //其实输出的count的这个常量echo defined('Message'). '<br>';?>
<?php//预定义常量echo '当前文件路径:'. __FILE__. '<br>';echo '当前行数:'. __LINE__. '<br>'; //82echo '当前PHP版本信息:'. PHP_VERSION. '<br>';echo '当前操作系统:'. PHP_OS;echo '<p>';?>
多くの言語とは異なり、PHP で使用する前に変数を宣言する必要はありません (PHP 4.0 より前では変数を宣言する必要があります)。変数に値を代入します。
<?php//变量的赋值//第一种:变量直接赋值,例如$E='ss';//第二种:变量之间的赋值,变量之间的赋值是指赋值后两个变量使用各自的内存,顾不干扰;//第三种:引用赋值,引用的概念就是,当改变其中一个变量的值时,另一个也跟着发生改变,使用&符号表示引用。//变量之间的赋值$string1 = 'spcn';$string2 = $string1;$string1 = 'zhuangjia';echo '变量string2的值为:'.$string2.'<br>';echo '变量string1的值为:'.$string1.'<br>';echo '<p>';//引用赋值$i = 'spcn';$j = & $i;$i = "hello,$i";echo 'j的值为:'. $j.'<br>';echo 'i的值为:'. $i.'<br>';?>
<?php//全局变量可以在程序中的任何地方访问,但是在用户自定义的函数中是不可用的。如果想用的话,使用global关键字声明。$zy = '不会看到';$zyy = '会看到';function lxt(){// echo $zy .'<br>'; global $zyy; echo $zyy.'<br>';}lxt();?><?php//可变变量 $change_name = 'trans'; $trans = 'you are met'; echo $change_name.'<br>'; echo $$change_name; //实现原理类似转义字符,$change_name 代表了trans,然后再加上一个$符号,即输出的是$trans echo '<p>';?>
演算子は + ? / () ^ ~ << などを含めて、ここで説明する必要があります。 use 除算符号の約数が 0 であるため、動作に影響を与えることなくエラーを回避することもできます。三方向演算子 3
<?php//@运算符:对错误信息进行屏蔽$err = @(5/0);echo $err.'<br>';?><?php//三元运算符$value = 100;$res = ($value == 100)?'三元运算':'没有改值';echo '哈哈'.$res.'<br>';echo '<p>';?>
1.5 関数
関数もあります。これは、再利用される関数を独立したコードで高速に記述し、必要に応じて単独で呼び出し、関数構文を作成します。 Function fun_name ($str1, $str2....$strn){}、呼び出された場合は fun_name(XXX)。
<?php//简单函数function countNumber($num1,$num2){ return "$num1 * $num2 = ".$num1 * $num2.'<br>';}echo countNumber(10,10);echo '<p>';//函数之间传递参数//按值传递方式function example($m){ $m = $m * 5 + 10; echo '在函数内$m的值为:'.$m.'<br>';}$mm = 1;example($mm);echo '函数外$m的值为:'.$mm.'<br>';echo '<p>';//按引用传递方式function example1(&$m){ $m = $m * 5 + 10; echo '在函数内$mmm的值为:'.$m.'<br>';}$mmm = 1;example1($mmm);echo '函数外$mmm的值为:'.$mmm.'<br>';echo '<p>';//可选参数,其中$tax就是可选参数,填也行,不填也行function values($price,$tax=""){ $price += $tax; echo '价格为:'.$price.'<br>';}values(100,20);values(100);echo '<p>';//对函数本身引用 function &rExample2($tmp=0){ $tmp = $tmp.'123456'; return $tmp; }$str5 = &example2("kankan");echo $str5.'<p>';?>
著作権表示: この記事はブロガーによるオリジナルの記事であり、ブロガーの許可なく複製することはできません。