
批改狀態(tài):合格
老師批語:
PHP中使用變量之前不需要聲明變量(PHP4之前需要聲明變量),只需為變量賦值即可。
PHP中的變量名稱用$和標(biāo)識符表示。標(biāo)識符由字母、數(shù)字或下面線組成,并且不能以數(shù)字開頭。另外變量名是區(qū)分大小寫的。
類型由值決定,命名規(guī)范與js一樣,只不過前面加上$
實(shí)例代碼演示
<?php
// !純php文件,不要加結(jié)束標(biāo)簽,除非與html混編
// ! 變量與函數(shù)
// 一個頁面就是一個應(yīng)用程序,相當(dāng)于exe,可以被執(zhí)行,只不過在服務(wù)品上執(zhí)行
// ? (一). 變量
// 類型由值決定,命名規(guī)范與js一樣,只不過前面加上$
$username = '張老師';
// 2. 查看
echo $username . '<br>';
// 3. 查看值和類型
var_dump($username);
echo '<br>';
// 4. 可更新
$username = '牛老師';
echo $username . '<hr>';
實(shí)例代碼演示:
// 1. 聲明與js是一樣,但是可以限定參數(shù)與返回值的類型,和TypeScript類似
function getUsername(string $username): string
{
return 'Hello, ' . $username;
}
// 2. 調(diào)用,與js一樣
echo getUsername('歐陽老師') . '<br>';
// 3. 參數(shù)不足: 默認(rèn)值
function getTotal(float $price, int $num = 1): float
{
return $price * $num;
}
echo '總金額: ' . getTotal(68.5) . ' 元 <br>';
echo '總金額: ' . getTotal(68.5, 5) . ' 元 <br>';
// 在js中, 有模板字面量,可以使用插值表達(dá)式,變量,函數(shù)
// 在php中,也有類似的模板,不過有二個限制
// 1. 必須用雙引號聲明
// 2. 只解析變量
echo "總金額: getTotal(68.5, 5) 元 <br>";
// 聲明一個匿名函數(shù)/函數(shù)表達(dá)式
$getTotal = function (float $price, int $num = 1): float {
return $price * $num;
};
// echo "總金額: $getTotal(68.5, 5) 元 <br>";
// 應(yīng)該告訴模板,這是一個變量,要一個界定標(biāo)準(zhǔn),邊界
echo "總金額: {$getTotal(68.5, 10)} 元 <br>";
$total = $getTotal(68.5, 2);
echo "總金額: {$total} 元 <br>";
// echo "總金額: ${total} 元 <br>";
// 4. 參數(shù)過多, js 剩余參數(shù) ...rest
$sum = function (float $a, float $b, float $c): float {
return $a + $b + $c;
};
echo $sum(3, 4, 5), '<br>';
echo $sum(3, 4, 5, 6, 7), '<br>';
$sum = function (...$args) {
// print_r($args);
// [1,2,3].reduce(....)
return array_reduce($args, function ($acc, $cur) {
return $acc + $cur;
}, 0);
};
echo $sum(3, 4, 5, 6, 7,8,9);
// 5. 返回值
// return : 默認(rèn)返回單值
// 返回多值: 數(shù)組/對象
$arr = [33, 2, 54, 7, 12, 23, 9];
function getItems(array $arr, $value): array
{
// 在js中, 外部 變量自動穿透到內(nèi)部,閉包
// 在php回調(diào)方法中,使用外部變量,用use進(jìn)行聲明
return array_filter($arr, function ($item) use ($value) {
return $item > $value;
});
}
print_r(getItems($arr, 20));
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號