學習php中10個基礎知識總結
看了些PHP的基礎知識,自己在這裡總結下:
1,在HTML嵌入PHP腳本有三種辦法:
以下為引用的內容:
<script language="php">
嵌入方式一
echo("test");
</script>
<?
嵌入方式二
echo "<br>test2";
?>
<?php
嵌入方式三
echo "<br>test3";
?>
還有一種嵌入方式,即使用和Asp相同的標記<%%>,但要修改PHP.ini 相關配置,不推薦使用。
2,PHP注釋分單行和多行注釋,和java注釋方式相同。
以下為引用的內容:
<?
這裡是單行注釋
echo "test";
/*
這裡是多行注釋! 可以寫很多行注釋內容
*/
?>
注意不要有嵌套注釋,如/*aaaa/*asdfa*/asdfasdfas*/,這樣的注釋會出現問題。
3,PHP主要的資料類型有5種:
integer,double,string,array,object。
4,函數內調用函數外部變數,需要先用global進行聲明,否則無法訪問,這是PHP與其他程式語言的一個區別。 事例代碼:
以下為引用的內容:
<?
$a=1;
function test(){
echo $a;
}
test(); 這裡將不能輸出結果「1」。
function test2(){
global $a;
echo $a;
}
test2(); 這樣可以輸出結果「1」。
?>
注意:PHP可以在函數內部聲明靜態變數。 用途同C語言中。
5,變數的變數,變數的函數
以下為引用的內容:
<?
變數的變數
$a="hello";
$$a="world";
echo "$a $hello"; 將輸出"hello world"
echo "$a ${$a}"; 同樣將輸出"hello world"
?>
<?
變數的函數
function func_1(){
print("test");
}
function fun($callback){
$callback();
}
fun("func_1"); 這樣將輸出"test"
?>
6,PHP同時支援標量陣列和關聯陣列,可以使用list()和array()來創建陣列,陣列下標從0開始。 如:
以下為引用的內容:
<?
$a[0]="abc";
$a[1]="def";
$b["foo"]=13;
$a[]="hello"; $a[2]="hello"
$a[]="world"; $a[3]="world"
$name[]="jill"; $name[0]="jill"
$name[]="jack"; $name[1]="jack"
?>
7,關聯參數傳遞(&的使用),兩種方法。 例:
以下為引用的內容:
<?
方法一:
function foo(&$bar){
$bar.=" and something extra";
}
$str="This is a String,";
foo($str);
echo $str; output:This is a String, and something extra
echo "<br>";
方法二:
function foo1($bar){
$bar.=" and something extra";
}
$str="This is a String,";
foo1($str);
echo $str; output:This is a String,
echo "<br>";
foo1(&$str);
echo $str; output:This is a String, and something extra
?>
8,函數預設值。 PHP中函數支援設定預設值,與C++風格相同。
以下為引用的內容:
<?
function makecoffee($type="coffee"){
echo "making a cup of $type.n";
}
echo makecoffee(); "making a cup of coffee"
echo makecoffee("espresso"); "making a cup of espresso"
/*
注意:當使用參數預設值時所有有預設值的參數應該在無預設值的參數的後邊定義。 否則,程式將不會按照所想的工作。
*/
function test($type="test",$ff){ //錯誤示例
return $type.$ff;
}
9,PHP的幾個特殊符號意義。
$ 變數
& 變數的位址(加在變數前)
@ 不顯示錯誤資訊(加在變數前)
-> 類的方法或者屬性
=> 陣列的元素值
?: 三元運運算元
10,include()語句與require()語句
如果要根據條件或迴圈包含檔,需要使用include().
require()語句只是被簡單的包含一次,任何的條件陳述式或迴圈等對其無效。
由於include()是一個特殊的語句結構,因此若語句在一個語句塊中,則必須把他包含在一個語句塊中。
以下為引用的內容:
<?
下面為錯誤語句
if($condition)
include($file);
else
include($other);
下面為正確語句
if($condition){
include($file);
}else
{
include($other);
}
?>