
批改狀態(tài):合格
老師批語:
(a-z,A-Z)
,數字(0-9)
,下劃線(\_)
或他們的組合$
“美元符為前綴嚴格區(qū)分
大小寫大寫字母
表示轉換方式 | 函數 |
---|---|
臨時轉換 | (int),(string),(array),(object)… |
自動轉換 | 根據操作符對操作數的類型要求進行 |
強制轉換 | settype() |
大家可以看到$str沒有轉換之前是string 字符串類型,下面我們用(int)臨時轉換為數值型
大家可以看到現在進行類型轉換之后$str變成了int數值型,和$int一模一樣的類型值,但是這種類型轉換不是永久的!而是臨時的!
類型沒有轉換之前是字符串 15歲
用@符號抑制報錯瀏覽器將會自動轉換類型,類型轉換之后15歲變成65,自動和數值類型相加,舍去了后面的字符串文字
$arr 沒有轉換類型之前是一個數組Array
強制類型轉換為string,輸出的類型就是字符串string
<?php
//定義全局變量
$str = '15';
$int = 30;
//使用(int) 臨時把字符串轉換為數值
echo (int)$str + $int .'<br>';
var_dump((int)$str,$int);
echo "<hr>";
//自動轉換類型
$age = "15歲";
//@符 強制解除報錯,會讓瀏覽器自動解析
@$age += 50;
echo $age;
echo "<hr>";
//settype()強制類型轉換,把一個數組類型轉換為string類型
$arr = ['1','2','3'];
settype($arr,'string');
echo gettype($arr);
?>
變量a等于50 變量b等于變量a,輸出變量b也等于50,這叫變量值傳遞,我們再看看更改變量a的值,變量b會不會改變屬性
我們可以看到,變量a的值改變成100,變量b的值沒有變化還是50,變量值傳遞等于每個人都有相同的值,重新更改賦值變量并不能改變被賦值本身的值,如果在下面在輸出一個 變量b等于a呢?
我們可以看到,如果在下面在輸出一個 變量b等于a,則變量b等于變量a最新的那個值,也就是說瀏覽器是從上到下開始解析的,這一點非常重要
變量值引用,用一個&符號放在要引用的變量前面,接下來我們改變一下$c的值,看看$a會不會受影響
大家可以看到,我們在這里改變了$c的值,$a的值也會收到影響,說明變量值傳遞和變量值引用是不一樣的!
方法 | 含義 |
---|---|
isset() | 用來檢測變量是否被定義,若變量存在并且值不為null才返回true 否則返回false |
empty() | 檢驗變量是否為空,為空返回true 不為空 返回false |
變量有值不為空,返回false
變量沒有值返回true
變量值不存在返回false
變量值存在返回true
<?php
//值變量傳遞
//變量a等于50 變量b等于變量a
$a = 50 ;
$b = $a ;
$a = 100 ;
$b = $a ;
echo $b;
echo '<hr>';
//變量值引用 用&符號
$c = 50;
$a = &$c;
//改變一下$c的值
$c = 100;
echo $a ;
echo "<hr>";
// $c = null;
//empty 檢驗變量是否為空,為空返回true 不為空 返回false
var_dump(empty($c));
echo "<hr>";
//isset 用來檢測變量是否被定義,若變量存在并且值不為null才返回true 否則返回false
var_dump(isset($c));
名稱 | 含義 |
---|---|
全局變量 | 全局變量,聲明全局外部的變量,不在函數里面的變量,函數內部無法直接訪問全局變量,必須加上global 才訪問全局變量 |
局部變量 | 局部變量,聲明在函數里面的變量 |
全局變量,函數內部無法直接訪問外面的全局變量,要加上global才能訪問到
用global訪問外面的全局變量,多個值用,號隔開
局部變量聲明在函數內部,外部無法訪問到函數內部聲明的變量
系統(tǒng)預定義魔術常量 | 含義 |
---|---|
__FILE__ | 默認常量,PHP程序文件名 |
__LINE__ | 默認常量,PHP程序行數 |
__FILE__默認常量,PHP程序文件名也就是當前文件所在的目錄
__LINE__默認常量,PHP程序行數
<?php
//變量作用域:全局變量聲明全局外部的變量
//這是全局變量
// $a = 100;
// $b = 20;
// function Sum(){
// global 訪問外面的全局變量
// global $a ,$b;
// 如果沒有global 則不能直接訪問外面的全局變量
// return $a * $b ;
// }
// echo Sum();
//局部變量:聲明在函數內部
function Sum(){
$a = 50 ;
$b = 30 ;
return $a / $b ;
}
echo Sum();
echo "<hr>";
//聲明在函數內部的變量無法訪問
echo $a ;
echo "<hr>";
//系統(tǒng)預定義魔術變量
// echo __FILE__; //當前文件所在的目錄
var_dump( __LINE__);
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號