国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > PHP > 正文

變量的變量,PHP和你

2024-05-04 21:57:07
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在我最近做的一個(gè)項(xiàng)目中,我發(fā)現(xiàn)了一個(gè)新的概念,關(guān)于在PHP中使用變量的變量,在我的程序中,我需要在一個(gè)頁(yè)面同時(shí)更新多個(gè)記錄,在我經(jīng)過(guò)相當(dāng)長(zhǎng)時(shí)間的痛苦思考之后,腦海中偶然地閃現(xiàn)出了變量的變量(variable variable)這一概念,所有的困惑就一掃而光了。

介紹:什么叫作變量的變量?根據(jù)PHP手冊(cè),變量的變量是指取得一個(gè)變量的值并把它作為另一個(gè)變量的變量名。這表述顯得相當(dāng)?shù)闹苯樱p易和那些在一個(gè)句子中使用“變量”這個(gè)詞弄混淆。給一個(gè)簡(jiǎn)單的例子,你定義一個(gè)變量 --- x 等于 this --- 然后定義一個(gè)變量的變量,意味著你把 x 的值作為新變量的名,在這個(gè)例子中,這個(gè)新變量的值是 is cake。用PHP來(lái)表示如下:

  1. <?php 
  2. $x = "this"
  3. $$x = "is cake"
  4. ?> 

這個(gè)符號(hào)$$是在PHP中對(duì)變量的變量的表示方法,現(xiàn)在我們可以用兩種不同的方式來(lái)引用這兩個(gè)變量 $x 和 $$x 了。

  1. <?php 
  2. echo "$x ${$x}"
  3. ?> 
  4. <?php 
  5. echo "$x $this"
  6. ?> 

上面兩段程序都將輸出 this is cake,注意,在echo語(yǔ)句中$$x被寫(xiě)成${$x},這是讓PHP知道你要輸出的是變量的變量而不是一個(gè)$字符與$x變量。

你是不是仍很迷惑?哦,也許吧,你想要一些更深入更有用的例子?下一節(jié),我將向你展示怎樣用變量的變量在一個(gè)頁(yè)面編輯多條記錄的。

例子:假設(shè)你已有一個(gè)MySQL數(shù)據(jù)庫(kù),保存了對(duì)一些感愛(ài)好的站點(diǎn)的鏈接,庫(kù)中有一個(gè)表submissions,字段如下:

  1. SubmissionID 
  2. PostedBy 
  3. Link 
  4. Description 
  5. Approved 

現(xiàn)在你想顯示在表中所有的已創(chuàng)建但沒(méi)有被認(rèn)可的鏈接,這個(gè)編輯的頁(yè)面應(yīng)可以更正一些輸入時(shí)的錯(cuò)誤,并用適當(dāng)?shù)膯芜x按鈕來(lái)為每一個(gè)記錄設(shè)置是否答應(yīng)(Approved),然后一次把更新后的記錄都提交到表中。

首先,當(dāng)你從數(shù)據(jù)庫(kù)出提取所有的記錄并顯示出來(lái)時(shí),你必須為每一個(gè)記錄設(shè)置一個(gè)唯一的名字,這將讓我們?cè)谔峤粫r(shí)可以循環(huán)地辯別出各個(gè)記錄的值,代碼如下:

  1. <?php 
  2. //初始化變量的記數(shù)器 
  3. $index = 0; 
  4. $index_count = 0; 
  5. echo "<form method=post action=$PHP_SELF>n"
  6. echo "<table>n"
  7. echo "<tr><td><b>Posted By</b></td><td><b>Link</b></td>"
  8. "<td><b>Description</b></td><td><b>Approved</b></td></tr>n"
  9. /********* 
  10. 假定我們已從數(shù)據(jù)庫(kù)中檢索出記錄到一個(gè)數(shù)組中  
  11. $myrow = mysql_fetch_array(). 
  12. 下面的 do...while 循環(huán)根據(jù)名字為每一個(gè)$xstr變量分配了一個(gè)值并且連接了$index 的值到結(jié)尾,以0為開(kāi)始。 
  13. 這樣,這個(gè)循環(huán)的第一次時(shí),$SubmissionIDStr 的值就是 SubmissionID0 ,第二次就是 SubmissionID1 ,以此類推。 
  14. ***********/ 
  15. do { 
  16. $SubmissionIDStr = SubmissionID.$index
  17. $PostedByStr = PostedBy.$index
  18. $LinkStr = Link.$index
  19. $DescriptionStr = Description.$index
  20. $ApprovedStr = Aprroved.$index
  21. //這一段將在屏幕上顯示值,以每行一條記錄。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 龙南县| 泾源县| 武穴市| 邹城市| 娱乐| 丰县| 罗平县| 高阳县| 铜鼓县| 云梦县| 南汇区| 交城县| 武川县| 田东县| 邵东县| 揭东县| 达拉特旗| 普定县| 石台县| 大兴区| 神农架林区| 庐江县| 邮箱| 宁海县| 古田县| 伊川县| 韶关市| 虞城县| 随州市| 平安县| 伊吾县| 嘉兴市| 津南区| 昌邑市| 澎湖县| 新化县| 南华县| 南安市| 孟连| 四川省| 高州市|