521源碼-免費代碼基礎學習-PHP如何運用變量教程

更多網站源碼學習教程,請點擊👉-521源碼-👈獲取最新資源

為什么要學習PHP?“我可以用JavaScript來實現程序編寫。”但JavaScript的能力是有限的,JavaScript通常運行在瀏覽器(客戶端),它可以制作網頁上面的特效:鼠標滑過背景改變顏色,還有網頁上常見的鼠標滑過彈出菜單。但如果要讓JavaScript實現顯示“訪問網站的總人數”,它就無能為力了,因為它只能獲得客戶端的信息,而“訪問網站的總人數”是存儲在服務器端的。所以就需要另外一種可以在服務器端運行的編程語言,PHP語言就是其中的一種,因為它可以運行在Web服務器端。

變量簡介

變量時用于儲存值的,我們讓服務器去干活的時候往往會產生數據,需要臨時存放起來,方便取用。

也可以理解為,變量就是一個袋子,里面可以裝蘋果,鳳梨什么的,但是一次只能裝一個,裝了這個,例外一個就被替換掉了。
這可以理解為猴子撿苞谷,撿一個丟一個。

就像這樣:

<?php$var = "我熱愛源碼";echo $var;echo "<br />";$var = "521源碼教大家學習PHP";echo $var;
?>

變量命名規則

變量名除了需要“$”進行標識外,還有一些規則需要遵守。就像拿到駕駛證以后,還得遵守交通規則。變量名的命名規則主要有三條:

1、變量名必須以字母或下劃線 “_”開頭,如$_name,$name,$name2等,但是$9name是不對的。

2、變量名只能由字母、數字、以及“_”組成,還能包含漢字。如$_qq,$qq308,$my_apple,“比如$name,但是$name*是不對的。

3、變量名不允許包含空格。當變量名由多個單詞組成,建議使用“_”進行分隔(比如 $my_apple),俗稱下劃線法,或者以大寫字母開頭比如 $myApple,俗稱駱駝式命名法(也稱駝峰命名法)。

特別需要注意的是,在PHP中變量名是區分大小寫的,如“$my_book”與“$my_Book”代表兩個不同的變量。

變量的數據類型

在變量中,由于變量占用的空間單元不一樣(占的地盤大小不一樣),也分成幾種數據類型,就像超市商品的包裝袋,有幾種不同類型,不同的商品使用不同的包裝袋。我們可以通過使用“memory_get_usage”獲取當前PHP消耗的內存。

<?php 
echo $m1 = memory_get_usage(); 
echo "<br />";
$var_string = "123";
echo $m2 = memory_get_usage()-$m1; 
echo "<br />";
$n=123;
echo $m3 = memory_get_usage()-$m1-$m2; 
echo "<br />";
$f=123.00;
echo $m4 = memory_get_usage()-$m1-$m2-$m3; 
echo "<br />";
$var_array = array("123");
echo $m5 = memory_get_usage()-$m1-$m2-$m3-$m4; 
?>

變量的數據類型

在PHP中,支持8種原始類型,其中包括四種標量類型、兩種復合類型和兩種特殊類型。PHP是一門松散類型的語言,不必向PHP聲明變量的數據類型,PHP會自動把變量轉換為自動的數據類型,一定程度降低了學習PHP的門檻。如果接觸過C語言或者JAVA語言,就會發現在聲明變量的時候需要聲明變量的數據類型。

標量類型—布爾類型

布爾類型(boolean):只有兩個值,一個是TRUE,另一個FALSE,可以理解為是或否。它不區分大小寫,也就是說”TRUE”和“true”效果是一樣的。主要用在條件結構(條件結構在后面部分會介紹)中,例如判斷是否滿足條件的時候,是用“true”表示滿足,用“false”表示不滿足。需要注意的是,當我們用”echo”指令輸出布爾類型時,如果是“true”則輸出的是“1”,“false”則什么也不輸出。我們可以使用“var_dump”函數,獲取它真正的數據類型。

<?php$flag=TRUE;
?>

標量類型—整型

整型(integer):類似于常見的整數。它可以用十進制、八進制、十六進制指定。十進制就是日常使用的數字;八進制,數字前必須加上“0”(這個0是阿拉伯數字0,可不是英文字母“歐”哦);十六進制,數字前必須加“0x” (這個0也是阿拉伯數字0,不是“歐”哦)。如:

<?php
$data_int = 1234;   // 十進制數 
$data_int = -567;    // 一個負數
$data_int = 0123;    // 八進制數(等于十進制的 83)
$data_int = 0x1a;    // 十六進制數(等于十進制的 26)
?>

標量類型—浮點型

浮點型(浮點數、雙精度數或實數),也就是通常說的小數,可以用小數點或者科學計數法表示。科學計數法可以使用小寫的e,也可以使用大寫的E。例如:

<?php
$num_float = 1.234;    //小數點  
$num_float = 1.2e3;    //科學計數法,小寫e  
$num_float = 7.0E-10;     //科學計數法,大寫E  
?>

標量類型—字符串

字符串是由一系列字符組成,在PHP中,字符和字節一樣,也就是說,一共有256種不同字符的可能性。
字符串型可以用三種方法定義:單引號形式、雙引號形式和Heredoc結構形式。

字串符中遇到引號怎么辦

<?php 
$str_string1 = '甲問:"你在哪里學的PHP?"';
$str_string2 = "乙毫不猶豫地回答:'當然是夢澤博客咯!'";
$str_string3 = '甲問:\'能告訴我網址嗎?\'';
$str_string4 = "乙答道:\"www.mengze2.cn\"";
echo $str_string1;
echo "<br />";
echo $str_string2;
echo "<br />";
echo $str_string3;
echo "<br />";
echo $str_string4;
echo "<br />";
?>

第一種方案:在單引號中嵌入雙引號,如上代碼第2行所示;

第二種方案:在雙引號中嵌入單引號,如代碼第3行所示;

第三種方案:使用轉義符“\”(后面部分還有介紹),分別如上代碼第4行和第5行所示;

當引號遇到美元咋辦

當雙引號中包含變量時,變量會與雙引號中的內容連接在一起;
當單引號中包含變量時,變量會被當做字符串輸出。

<?php 
$love = "I love you!"; 
$string1 = "慕課網,$love";
$string2 = '慕課網,$love';
echo $string1;
echo "<br />";
echo $string2;
?>

字符串很長怎么辦

我們可以使用Heredoc結構形式的方法來解決該問題,首先使用定界符表示字符串(<<<),接著在“<<<“之后提供一個標識符GOD,然后是字符串,最后以提供的這個標識符結束字符串。

<?php 
$string1 = <<<GOD
我有一只小毛驢,我從來也不騎。
有一天我心血來潮,騎著去趕集。
我手里拿著小皮鞭,我心里正得意。
不知怎么嘩啦啦啦啦,我摔了一身泥.
GOD;echo $string1;
?>

特殊類型—資源

資源(resource):資源是由專門的函數來建立和使用的,例如打開文件、數據連接、圖形畫布。我們可以對資源進行操作(創建、使用和釋放)。任何資源,在不需要的時候應該被及時釋放。如果我們忘記了釋放資源,系統自動啟用垃圾回收機制,在頁面執行完畢后回收資源,以避免內存被消耗殆盡。

<?php
$file=fopen("f.txt","r");   //打開文件
$con=mysql_connect("localhost","root","root");  //連接數據庫
$img=imagecreate(100,100);//圖形畫布
?>

特殊類型—空類型

NULL(NULL):NULL是空類型,對大小寫不敏感,NULL類型只有一個取值,表示一個變量沒有值,當被賦值為NULL,或者尚未被賦值,或者被unset(),這三種情況下變量被認為為NULL。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/15464.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/15464.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/15464.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

go語言中for的4種循環形式總結

和其他語言不一樣&#xff0c;go語言中的循環語句只有for一種&#xff0c;但是go里面的for卻有3種不同的循環形式&#xff0c;總結如下&#xff1a; 1. 無限循環 for { //這個就是一個“死循環”&#xff0c;注意必須要有 break條件&#xff0c;否則就真成死循環了 } 2. fo…

Redis 源碼學習記錄:集合 (set)

無序集合 Redis 源碼版本&#xff1a;Redis-6.0.9&#xff0c;本篇文章無序集合的代碼均在 intset.h / intset.c 文件中。 Redis 通常使用字典結構保存用戶集合數據&#xff0c;字典鍵存儲集合元素&#xff0c;字典值為空。如果一個集合全是整數&#xff0c;則使用字典國語浪費…

PostgreSQL入門教程

PostgreSQL是一種開源的關系型數據庫管理系統&#xff0c;它具有高度的可靠性、可擴展性和性能。下面是一個簡單的PostgreSQL入門教程&#xff0c;幫助你開始使用這個強大的數據庫管理系統。 步驟1&#xff1a;安裝PostgreSQL 首先&#xff0c;你需要下載并安裝PostgreSQL。你…

2024年最全的信息安全、數據安全、網絡安全標準分享(可下載)

以上是資料簡介和目錄&#xff0c;如需下載&#xff0c;請前往星球獲取&#xff1a;https://t.zsxq.com/Gz1a0

【全網最全】2024電工杯數學建模A題成品論文+前三題完整解答matlab+py代碼等(后續會更新成品論文)

您的點贊收藏是我繼續更新的最大動力&#xff01; 一定要點擊如下的卡片鏈接&#xff0c;那是獲取資料的入口&#xff01; 【全網最全】2024電工杯數學建模A題成品論文前三題完整解答matlabpy代碼等&#xff08;后續會更新成品論文&#xff09;「首先來看看目前已有的資料&am…

Python 點云平面分割【RANSAC算法】

點云平面分割 一、介紹1.1 概念1.2 算法思路1.3 參數設置二、代碼示例三、結果示例其他參考鏈接:C++中實現點云平面分割 一、介紹 1.1 概念 點云平面分割:可以在點云數據中找到平面并計算平面模型系數,同時輸出平面點云及非平面點云。 1.2 算法思路 實現思路: 首先,采用…

Sass是什么?有哪些優缺點?

目錄 一、Sass是什么&#xff1f; 二、Sass的優缺點 三、Sass與SaaS 一、Sass是什么&#xff1f; Sass是世界上最成熟、最穩定、最強大的專業級CSS擴展語言。 Sass makes CSS fun again. Sass is an extension of CSS, adding nested rules, variables, mixins, selector in…

【C++高階(一)】繼承

目錄 一、繼承的概念 1.繼承的基本概念 2.繼承的定義和語法 3.繼承基類成員訪問方式的變化 ?編輯 4.總結 二、基類和派生類對象賦值轉換 三、繼承中的作用域 四、派生類的默認成員函數 1.派生類中的默認構造函數 2.派生類中的拷貝構造函數 3.派生類中的移動構造函數…

英語學習筆記25——Mrs. Smith‘s kitchen

Mrs. Smith’s kitchen 史密斯太太的廚房 詞匯 Vocabulary Mrs. 夫人【已婚】 復習&#xff1a;Mr. 先生 全名 / 姓    Mrs. 夫人 全名 / 丈夫的姓    Miss 小姐&#xff08;未婚&#xff09; 全名 / 姓    Ms. 女士 全名 / 姓 查看婚姻狀況&#xff0c;可以觀察…

springboot項目中圖片上傳之后需要重啟工程才能看到圖片?

需求背景 最近在做一個用戶自定義上傳頭像的小需求&#xff0c;用戶上傳頭像然后需要立馬回顯。 需求是很常見的、正當的需求。如果不使用到對象存儲這類服務&#xff0c;我們把用戶頭像的圖片文件僅存在本地就可以了。我們在開發的過程中為了工程管理方便通常下意識會將圖片…

freertos串口DMA隊列發送卡死

調試回調函數的時候&#xff0c;我在cube中刪除了默認的DMA通道&#xff0c;又新增了另外一個通道&#xff0c;導致NVIC中&#xff0c;該通道的優先級為0&#xff0c;后來改成了5就正常了。

Modbus TCP轉Profinet網關測試配置案例

本案例采用XD-ETHPN20網關做為Modbus TCP通信協議設備與Profinet通信協議設備連接的橋梁。Modbus TCP是一種基于TCP/IP協議的工業通信協議&#xff0c;而Profinet則是用于太網通信的協議。Modbus TCP轉Profinet網關可實現這兩種不同協議之間的數據交換和傳輸&#xff0c;極大地…

算法刷題筆記 逆序對的數量(C++實現)

文章目錄 題目描述解題代碼&#xff08;蠻力版&#xff09;解題代碼&#xff08;基于歸并排序&#xff09; 題目描述 給定一個長度為n的整數數列&#xff0c;請你計算數列中的逆序對的數量。逆序對的定義如下&#xff1a;對于數列的第i個和第j個元素&#xff0c;如果滿足i<…

Python高級進階--dict字典

dict字典?? 1. 字典簡介 dictionary&#xff08;字典&#xff09; 是 除列表以外 Python 之中 最靈活 的數據類型&#xff0c;類型為dict 字典同樣可以用來存儲多個數據字典使用鍵值對存儲數據 2. 字典的定義 字典用{}定義鍵值對之間使用,分隔鍵和值之間使用:分隔 d {中…

【ECharts】數據可視化

目錄 ECharts介紹ECharts 特點Vue2使用EChats步驟安裝 ECharts引入 ECharts創建圖表容器初始化圖表更新圖表 示例基本柱狀圖后臺代碼vue2代碼配置 組件代碼運行效果 基本折線圖示例代碼組件 基礎餅圖示例代碼后臺前端配置組件運行效果 其他 ECharts介紹 ECharts 是一個由百度開…

spring模塊(一)容器(4)ApplicationContextAware

一、介紹 1、問題引入 為了獲取已被實例化的Bean對象,如果使用再次加載配置文件的方法,可能會出現一個問題,如一些線程配置任務, 會啟動兩份,產生了冗余. ApplicationContext appContext new ClassPathXmlApplicationContext("applicationContext.xml"); UserS…

python 多線程處理圖片

thread for i in range(len(ori_path)):for filename in os.listdir(ori_path[i]):number_img number_img 1print("正在處理第" str(number_img) "張圖片")img_name ori_path[i] filenamet Thread(target deal_one_img, args [img_name, filenam…

使用.net core 調用C#WebService的三種方式

WebSerrvic代碼&#xff1a; [WebMethod]public string Test(string p1, string p2){return p1 "_" p2;} 以下是 SOAP 1.2 請求和響應示例。所顯示的占位符需替換為實際值。 POST /Service1.asmx HTTP/1.1 Host: localhost Content-Type: text/xml; charsetutf-8…

unity 制作app實現底部導航欄和頂部狀態欄

前段時間在用unity制作一個app&#xff0c;發現有個問題用unity制作的app&#xff0c;他默認是沒有頂部狀態欄的&#xff0c;也沒有底部的導航欄&#xff0c;是一個全部覆蓋的狀態。但仔細觀察可以發現&#xff0c;正常app&#xff0c;頂部狀態欄是有的&#xff0c;而且是透明的…

軟件設計師備考 | 案例專題之數據庫設計 概念與例題

相關概念 關注上圖中的兩個部分&#xff1a; 概念結構設計 設計E-R圖&#xff0c;也即實體-聯系圖。 工作步驟&#xff1a;選擇局部應用、逐一設計分E-R圖、E-R圖合并。進行合并時&#xff0c;它們之間存在的沖突主要有以下3類&#xff1a; 屬性沖突。同一屬性可能會存在于…