
批改狀態(tài):合格
老師批語(yǔ):
字符串
區(qū)別:
<?php
//echo
echo "using echo";
echo "<hr>";
$a = print "using print";
//return value of print
echo " return ".$a;
echo "<hr>";
$b = "using echo ";
echo $b,$b;
echo "<hr>";
*注:ob_clean() 使之前代碼不輸出
數(shù)組
區(qū)別:
ob_clean();
$arr = [1,true,"hehe",3.14];
//數(shù)組也可這樣聲明
// $arr2 = Array("id"=>1,"name"=>"haha","working"=>false);
echo "using echo \$arr";
echo "<hr>";
echo $arr;
echo "<hr>";
echo "using var_dump(\$arr)";
echo "<hr>";
var_dump($arr);
echo "<hr>";
echo "using print_r(\$arr)";
echo "<hr>";
print_r($arr);
echo "<hr>";
echo "using var_export(\$arr)";
echo "<hr>";
var_export($arr);
echo "<hr>";
echo "using print_r(\$arr,true)";
print_r($arr,true);
echo "<hr>";
echo "using var_export(\$arr,true)";
var_export($arr,true);
$v1=print_r($arr,true);
$v2=var_export($arr,true);
file_put_contents("log1.txt",$v1);
file_put_contents("log2.txt",$v2);
*注:<pre></pre>標(biāo)簽可使內(nèi)容保持文本格式輸出和
var_dump() or gettype() 可以用于查看數(shù)據(jù)類型
*注:@符號(hào)在PHP中用作錯(cuò)誤控制操作符。當(dāng)表達(dá)式附加@符號(hào)時(shí),將忽略該表達(dá)式可能生成的錯(cuò)誤消息。
resource類型
<?php
//resource 資源類型 保存到外部資源的一個(gè)引用
//fopen
$reader = fopen("log1.txt","w");
var_dump($reader);
//resource(3) of type (stream)
// 3是id stream是資源類型
//imagecreate()
$image_creater = imagecreate(100,50);
var_dump($image_creater);
//resource(4) of type (gd)
// id gd是PHP的一個(gè)庫(kù),默認(rèn)打開(kāi)(phpinfo()可見(jiàn))
null類型
//null 表示變量沒(méi)有值
$reader = null;
var_dump($reader);
//NULL
unset($image_creater);
var_dump($image_creater);
//NULL
強(qiáng)制類型轉(zhuǎn)換
<?php
# 強(qiáng)制類型轉(zhuǎn)換
$page = '3';
echo gettype($page);
echo "<hr>";
$newPage = (int)$page;
echo gettype($newPage);
echo "<hr>";
var_dump($newPage,(string)$newPage,(float)$newPage);
echo "<hr>";
var_dump((array)$newPage,((array)$newPage)[0]);
自動(dòng)類型轉(zhuǎn)換—數(shù)值
(使用+ - 運(yùn)算符,計(jì)算的數(shù)據(jù)需為數(shù)值類型,如果不是數(shù)值類型,會(huì)觸發(fā)自動(dòng)轉(zhuǎn)換)
# 自動(dòng)類型轉(zhuǎn)換
$a = "200pigs";
@$a += 100;
var_dump($a);
// int(300)
$a += 5.5;
var_dump($a);
// float(305.5)
$a += null + "10";
var_dump($a);
// float(315.5)
自動(dòng)類型轉(zhuǎn)換—字符串
(使用 . 拼接字符串,會(huì)觸發(fā)自動(dòng)轉(zhuǎn)換為字符串)
echo "I am ". 18 ." years old ".true;
// I am 18 years old 1
自動(dòng)類型轉(zhuǎn)換—布爾
# if判斷中,null等同于false
if (!null) {
echo "ok";
}
// ok
@settype($page,boolean);
echo "<hr>";
echo $page;
// 1
echo gettype($page);
// boolean
function add(int $a, int $b) : string {
return $a + $b;
}
var_dump(add(11.11,22.22));
// string(2) "33"
$a = 100;
$b = $a;
$c = &$a;
echo "\$a=$a, ","\$b=$b, ","\$c=$c";
echo "<hr> change a to 55: \$a=55<hr>";
$a = 55;
echo "\$a=$a, ","\$b=$b, ","\$c=$c";
echo "<hr>unset(\$a)<hr>";
echo "\$a=$a, ","\$b=$b, ","\$c=$c";
echo "<hr> change a to 99: \$a=99<hr>";
echo "\$a=$a, ","\$b=$b, ","\$c=$c";
$uname = "Tom";
var_dump(isset($uname));
//bool(true)
$uname = null;
var_dump(isset($uname));
//bool(false)
$upwd = "";
var_dump(empty($upwd));
// bool(true)
$upwd = null;
var_dump(empty($upwd));
// bool(true)
$upwd = 0;
var_dump(empty($upwd));
// bool(true)
$upwd = 1;
var_dump(empty($upwd));
// bool(false)
$upwd = false;
var_dump(empty($upwd));
// bool(true)
$upwd = true;
var_dump(empty($upwd));
// bool(false)
$a = 10;
$b = 20;
function a(){
echo $a+$b;
}
a();
//0
#在函數(shù)中使用全局變量
#1. global
function b(){
global $a, $b;
echo $a+$b;
}
b();
//30
#2. $GLOBALS[name]
function c(){
echo $GLOBALS["a"]+$GLOBALS["b"];
}
c();
//30
// $GLOBALS: 引用全局作用域中可用的全部變量
// $_SERVER: 服務(wù)器和執(zhí)行環(huán)境信息
// $_GET :通過(guò) URL 參數(shù)(又叫 query string)傳遞給當(dāng)前腳本的變量的數(shù)組
// $_POST:當(dāng) HTTP POST 請(qǐng)求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 時(shí),會(huì)將變量以關(guān)聯(lián)數(shù)組形式傳入當(dāng)前腳本
// $_FILES:通過(guò) HTTP POST 方式上傳到當(dāng)前腳本的項(xiàng)目的數(shù)組
// $_COOKIE:通過(guò) HTTP Cookies 方式傳遞給當(dāng)前腳本的變量的數(shù)組
// $_SESSION:當(dāng)前腳本可用 SESSION 變量的數(shù)組
// $_REQUEST: 默認(rèn)情況下包含了 $_GET,$_POST 和 $_COOKIE 的數(shù)組
// $_ENV: 通過(guò)環(huán)境方式傳遞給當(dāng)前腳本的變量的數(shù)組
例 $_GET
獲取地址欄后面的參數(shù)
http://phps.com/0426/demo5.php?id=1&age=22
echo "<pre>".print_r($_GET,true)."<pre>";
<?php
# 常量 const, define(name,value)定義
const PATH = "/0426/demo4.php";
const FEMALE = "女";
define("MALE","男");
printf("性別 <br> Male %s <br> Female %s",MALE,FEMALE);
//printf() 格式化輸出
# 在類中定義常量只能使用 const
class Test{
const PATH = "/0426/demo4.php";
}
get_defined_constants(true/false)
echo "<pre>".print_r(get_defined_constants(true),true)."<pre>";
(source:https://www.php.net/manual/en/language.constants.magic.php)
<?php
echo "line: ".__LINE__;
// line: 2
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)