常量值被定义后,在脚本的其他任何地方都不能被改变。
常量是一个简单值的标识符。该值在脚本中不能改变。
一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。 (常量名不需要加 $ 修饰符)。
注意: 常量在整个脚本中都可以使用。
设置 PHP 常量
设置常量,使用 define() 函数,函数语法如下:
bool define(string $name, mixed $value, [bool $case_insensitive])
该函数有三个参数:
以下实例我们创建一个 区分大小写的常量, 常量值为 “欢迎访问我的主页:https://blog.csdn.net/qq_36595013“:
// 区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com");
echo GREETING; // 输出 "欢迎访问 Runoob.com"
echo '
';
echo greeting; // 输出 "greeting"
?>
以下实例我们创建一个 不区分大小写的常量, 常量值为 “欢迎访问 Runoob.com”:
// 不区分大小写的常量名
define("GREETING", "欢迎访问 Runoob.com", true);
echo greeting; // 输出 "欢迎访问 Runoob.com"
?>
常量是全局的
常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用。
以下实例演示了在函数内使用常量,即便常量定义在函数外也可以正常使用常量。
define("GREETING", "欢迎访问我的主页:https://blog.csdn.net/qq_36595013");
function myTest() {
echo GREETING;
}
myTest();
?>
字符串变量用于存储并处理文本。
字符串变量用于包含有字符的值。
在创建字符串之后,我们就可以对它进行操作了。您可以直接在函数中使用字符串,或者把它存储在变量中。
在下面的实例中,我们创建一个名为 txt 的字符串变量,并赋值为 “Hello world!” 。然后我们输出 txt 变量的值:
$txt = "Hello World!";
echo $txt;
?>
* 以下是一些常用的操作字符串的函数和运算符。*
PHP 并置运算符
在 PHP 中,只有一个字符串运算符。
并置运算符 (.) 用于把两个字符串值连接起来。
下面的实例演示了如何将两个字符串变量连接在一起:
$x = "Hello World!";
$y = "What a nice day!";
echo $x . $y; //输出为Hello World!What a nice day!
echo "
";
echo $x . " " . $y; //输出为 Hello World! What a nice day!
?>
在上面的代码中,我们使用了两次并置运算符。这是由于我们需要在两个字符串之间插入一个空格。
PHP strlen() 函数
有时知道字符串值的长度是很有用的。
strlen() 函数返回字符串的长度(字符数)。
下面的实例返回字符串 “Hello world!” 的长度:
$x = "Hello My name is WangWei!";
echo strlen($x); //25
echo "
";
$y = "Hello World!";
echo strlen($y); //12
?>
提示: strlen() 常常用在循环和其他函数中,因为确定字符串何时结束是很重要的。(例如,在循环中,我们需要在字符串中的最后一个字符之后结束循环。)
PHP strpos() 函数
strpos() 函数用于在字符串内查找一个字符或一段指定的文本。
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
下面的实例在字符串 “Hello world!” 中查找文本 “world”:
echo strpos("Hello World!", "World"); //6
?>
注:在上面的实例中,字符串 “world” 的位置是 6。之所以是 6 而不是 7 的原因是,字符串中第一个字符的位置是 0,而不是 1。
更多关于操作字符串的函数:PHP String参考手册
$x = 18;
$y = 10;
echo ($x + $y) . "
"; //28
echo ($x - $y) . "
"; //8
echo ($x * $y) . "
"; //180
echo ($x / $y) . "
"; //1.8
echo ($x % $y) . "
"; //8
echo -$x; //-18
?>
PHP7+ 版本新增整除运算符 intdiv()
$x = 18;
$y = 10;
echo ($x + $y) . "
"; //28
echo ($x - $y) . "
"; //8
echo ($x * $y) . "
"; //180
echo ($x / $y) . "
"; //1.8
echo ($x % $y) . "
"; //8
echo -$x . "
"; //-18
echo intdiv($x, $y) . "
"; //1
echo var_dump(intdiv($x, $y)); //int(1)
?>
PHP 赋值运算符
在 PHP 中,基本的赋值运算符是 “=”。它意味着左操作数被设置为右侧表达式的值。也就是说,”$x = 5” 的值是 5。
PHP 递增/递减运算符
$x = 9;
echo $x++; //9
echo "
" . $x; //10
echo "
";
$y = 10;
echo ++$y; //11
echo "
" . $y; //11
echo "
";
$z = 8;
echo $z--; //8
echo "
" . $z; //7
echo "
";
$w = 7;
echo --$w; //6
echo "
" . $w; //6
?>
$x = 100;
$y = "100";
var_dump($x == $y); //bool(true)
echo "
";
var_dump($x === $y); //bool(false)
echo "
";
var_dump($x != $y); //bool(false)
echo "
";
var_dump($x !== $y); //bool(true)
echo "
";
$z = 100;
$w = 110;
var_dump($z < $w); //bool(true)
echo "
";
var_dump($z > $w); //bool(false)
?>
$x = 12;
$y = 13;
echo var_dump(($x < 15) and ($y > 10)); //bool(true)
echo "
";
echo var_dump(($x > 15) or ($y < 10)); //bool(false)
?>
$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);
?>
运行结果:
array(4) {
[“a”]=>
string(3) “red”
[“b”]=>
string(5) “green”
[“c”]=>
string(4) “blue”
[“d”]=>
string(6) “yellow”
}
bool(false)
bool(false)
bool(true)
bool(true)
bool(true)
$y = date("y"); //18
$m = date("m"); //06
$d = date("d"); //24
echo "今天是".$y."-".$m."-".$d;
echo "
";
if($y < 20) {
echo "距离2020年还有".(20 - $y)."天"; //2
}
?>
$m = date("m");
echo $m; //6
echo "
";
if((1 <= $m) && ($m <= 3)) {
echo "春天里的".$m."月,"." 你好!";
}
else if((4 <= $m) && ($m >=6)) {
echo "夏天里的".$m."月,"." 你好!";
}
else if((7 <= $m) && ($m <= 9)) {
echo "秋天里的".$m."月,"." 你好!";
}
else {
echo "冬天里的".$m."月,"." 你好!";
}
?>
switch 语句用于根据多个不同条件执行不同动作。
如果您希望有选择地执行若干代码块之一,请使用 switch 语句。
工作原理:首先对一个简单的表达式 n(通常是变量)进行一次计算。将表达式的值与结构中每个 case 的值进行比较。如果存在匹配,则执行与 case 关联的代码。代码执行后,使用 break 来阻止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。
$num = rand(1, 5); //返回随机整数
echo $num;
echo "
";
switch($num) {
case "1":
echo "一枝独秀";
break;
case "2":
echo "二龙戏珠";
break;
case "3":
echo "三人行,必有我师";
break;
case "4":
echo "四通八达";
break;
default:
echo "五步成诗";
}
?>
数组能够在单个变量中存储多个值:
$fruits = array("apple", "banana", "mango", "Hami melon");
echo "I like ".$fruits[0].", ".$fruits[1]." and ".$fruits[3];
?>
$fruits = array("apple", "banana", "mango", "Hami melon");
echo "I like ".$fruits[0].", ".$fruits[1]." and ".$fruits[3];
echo "
";
$length = count($fruits);
echo $length; //4
?>
遍历数值数组
遍历并打印数值数组中的所有值,可以使用 for 循环,如下所示:
$fruits = array("apple", "banana", "mango", "Hami melon");
$length = count($fruits);
for($i = 0; $i < $length; $i++) {
echo $fruits[$i];
echo "
";
}
?>
PHP 关联数组
关联数组是使用您分配给数组的指定的键的数组。
这里有两种创建关联数组的方法:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); //数组下标/值对
or
$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43";
遍历关联数组
遍历并打印关联数组中的所有值,可以使用 foreach 循环,如下所示:
$fruits = array("apple"=>"5", "banana"=>"6", "mango"=>"7", "Hami melon"=>"8");
foreach($fruits as $x=>$x_value) {
echo "index=".$x. " value=".$x_value."
";
}
?>
结果:
完整的 PHP Array 参考手册
PHP Array 参考手册。
数组中的元素可以按字母或数字顺序进行降序或升序排列。
下列 PHP 数组排序函数:
sort() - 对数组进行升序排列
下面的实例将 $cars 数组中的元素按照字母升序排列:
$fruits = array("mango", "apple", "pear", "banana");
sort($fruits);
print_r($fruits);
?>
结果:
下面的实例将 $numbers 数组中的元素按照数字升序排列:
$numbers = array(10, 1, 13, 8, 4, 6, 3);
sort($numbers);
print_r($numbers);
?>
asort() - 根据数组的值,对数组进行升序排列
arsort() - 根据数组的值,对数组进行降序排列
下面的实例根据数组的值,对关联数组进行升序排列:
$ageOfPeople = array("张三" => "20", "李四" => "14", "王五" => "23");
asort($ageOfPeople);
print_r($ageOfPeople);
?>
ksort() - 根据数组的键,对数组进行升序排列
krsort() - 根据数组的键,对数组进行降序排列
下面的实例根据数组的键,对关联数组进行升序排列:
$ageOfPeople = array("Mary" =>"11","Alice" => "18", "Peter" => "25");
ksort($ageOfPeople);
print_r($ageOfPeople);
?>