A.命令行運行PHP代碼
php -r "echo 1;"
B.5.3.0分水嶺版本的一些改變
- POSIX → PCRE
- ereg_replace() → preg_replace()
- ereg() → preg_match()
- eregi_replace() → preg_replace()
- eregi() → preg_match()
- split() → preg_split()
- spliti() → preg_split()
- sql_regcase() → No equivalent
return is_array($var) ? array_map('addslashesDeep', $var) : addslashes($var);
}
$_GET = addslashesDeep($_GET);
$_POST = addslashesDeep($_POST);
$_COOKIE = addslashesDeep($_COOKIE);
$_REQUEST = addslashesDeep($_REQUEST);
原來需要雙引號,困擾了我好多年。
var_dump($a, $b);
}
if ($a = 100 || $b = 200) {
var_dump($a, $b);
}
$a = (100 && $b) = 200; 會有語法錯誤。所以……
H.safe_mode
PHP5.4開始 無安全模式 之前所起到的功能 用系統用戶權限來實現
1.系統文件函數 open_basedir
chdir,
move_uploaded_file, chgrp, parse_ini_file, chown, rmdir, copy, rename, fopen, require, highlight_file, show_source, include, symlink, link, touch, mkdir, unlink
2.執行命令函數 safe_mode_exec_dir
exec,shell_exec,passthru,system,popen
3.部分設置函數
set_time_limit,
set_include_path, ini_set的display_errors、memory_limit
safe_mode=on打開安全模式
safe_mode_gid
= off 開啓後 此值應該 與文件系統函數的目標文件的用戶id 一致
safe_mode_exec_dir 執行程序目錄
safe_mode_include_dir
包含文件目錄
open_basedir
PHP腳本能夠訪問的目錄
disable_functions=chdir,chroot,dir 關閉指定函數(例如文件操作什麼的)
expose_php
= Off 關閉PHP版本信息
register_globals
= Off 關閉註冊的全局變量(POST或者GET提交的變量,都將自動註冊爲全局變量。關閉後用$_GET['key']訪問)
magic_quotes_gpc
= On 防止SQL注入
I.ci框架
實現多項目公用一套system
把index.php放進不同的application目錄下
web服務器更目錄設置此application下 更改index.php的目錄設置即可