Re: [請益]php的問題集
※ 引述《tempTTP1 (任劍翔)》之銘言:
: 大家好:
: 小弟借了一本php的書,但是書裡的內容寫得太模糊了,而且印刷有很多錯誤
: 麻煩大家知道的話幫忙解答一下...感謝~
: 1. 內建常數__FILE__的值代表目前被執行的檔案名稱
: 書上寫說以circle_const.php為例,就是/home/httpd/html/circle_const.php
: 所以他顯示是完整路徑嗎?home前一個資料夾為什麼都沒有寫?
home已經是根目錄下的第一層子目錄. 再上去沒有了.
: 2. 內建常數TRUE的值是"邏輯判斷中為真的值",請問是說目前不為0或空字串的變數嗎?
true是保留字, 在php裏是內建的, 代表邏輯判斷中為'真'的'值'.
false是true的相反,意指為'假'.它們都是'常數',不是變數.
: 3. $foo=1+"10 boxes";他說$foo型態為整數,$foo=11,是規定的嗎?還是boxes是保留
: 字?
: $foo="10boxes"+1.0;他說$foo型態為雙精確度數,$foo=11.0 問題同上
boxes不是保留字, 就算是保留字, 被"括起來也變成是一個字串了.
1+"10 boxes"會等於11? 我不建議用這種描述, 太危險了. 很容易產生出乎意外
的結果.
這應該是根據php資料型態轉換的規則所得到的結果.
: 4. <?
: echo "Hello!\n";
: echo "World!";
: ?> //結果:Hello! World!
: <?
: echo "Hello!<br>\n";
: echo "World!";
: ?> //結果:Hello!
: // World!
: 書上說"php輸出到網頁文件中,但是html則輸出在使用者瀏覽器上",所以還要
: 加上"<br>",但是這樣不就不需要那些脫逸字元了嗎?還有上句話能解釋一下嗎?
先在腦中裏想像最原始的文字輸出結果就好.
第一個例子中的原始文字輸出是:
(以下輸出結果前後各加上一道空白行, 是為了增加可讀性, 而非輸出的一部份.)
Hello!
World!
當你把它當成是html語言來看的話,它在瀏覽器上呈現的就是:
Hello! World!
第二個例子中的原始文字輸出是:
Hello!<br>
World!
當你把它當成是html語言來看的話,它在瀏覽器上呈現的就是:
Hello!
World!
: 5. "include和require的差別是include在執行時才把引用檔案載入,require是執行前
: 預先載入",所以"判斷敘述或廻圈中要引用檔案就要用include"
: 那也可以用require嗎?也可以要用函示再用include嗎?
這個可以寫個簡單的程式做測試, ex:
[test.php]
<?php
include 'test2.php';
require 'test2.php';
include 'test2.php';
?>
[test2.php]
<?php
if ( true )
echo 'hello:'.rand(0,10)."\n";
?>
在命令列模式下執行: php -q test.php 原始文字輸出結果:
hello:7
hello:5
hello:1
可見不管是用require or include, 都會執行被包含進來的程式碼.
至於函式, 更沒問題了. 不過若是用include 或 require 包含函式進來的話,
要注意重複宣告的問題. 要避免這問題, 可用 include_once 或 require_once
來解決.
我是用php5.2版本測試的.
: ~感謝解答
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.67.139.64
推
06/24 23:42, , 1F
06/24 23:42, 1F
→
06/25 00:58, , 2F
06/25 00:58, 2F
推
06/25 23:23, , 3F
06/25 23:23, 3F
推
06/26 09:44, , 4F
06/26 09:44, 4F
→
06/26 09:44, , 5F
06/26 09:44, 5F
推
06/26 10:10, , 6F
06/26 10:10, 6F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章