#
function ubb($str) {??
$color=Array('red','blue','green');
$str=eregi_replace('\[url\]([a-zA-Z0-9@:%_.~#-\?&]+)\[\/url\]','<a href=http://\\1>\\1</a>',$str);//url
$str=eregi_replace('\[url=http://([a-zA-Z0-9@:%_.~#-\?&]+)\](.+)\[\/url\]','<a
href=\\1 target=_blank>\\2</a>',$str);
$str=eregi_replace('\[url=([a-zA-Z0-9@:%_.~#-\?&]+)\](.+)\[\/url\]','<a
href=http://\\1 target=_blank>\\2</a>',$str);
$str=eregi_replace('\[img\]([a-zA-Z0-9@:%_.~#-\?&]+)\[\/img\]','<img src=http://\\1>\\1</img>',$str);//img
$str=eregi_replace('\[h([1-6])\](.+)\[\/h[1-6]\]','<h\\1>\\2</h\\1>',$str);//h1-6
$str=eregi_replace('\[email\]([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})\[\/email\]','<a
href=mailto:\\1>\\1</a>',$str);//email
$str=eregi_replace('\[email=([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})\](.+)\[\/email\]','<a
href=mailto:\\1>\\2</a>',$str);
$str=eregi_replace('\[b\](.+)\[\/b\]','<b>\\1</b>',$str);
$str=eregi_replace('\[i\](.+)\[\/i\]','<i>\\1</i>',$str);
$str=eregi_replace('\[size=(.+)\](.+)\[\/size\]','<font size=\\1>\\2</font>',$str);
$str=eregi_replace('\[color=(.+)\](.+)\[\/color\]','<font color=\\1>\\2</font>',$str);
$str=eregi_replace('\[sub\](.+)\[\/sub\]','<sub>\\1</sup>',$str);//下裱
$str=eregi_replace('\[sup\](.+)\[\/sup\]','<sup>\\1</sup>',$str);//上標
for($i=0;$i<=count($color);$i++)$str=eregi_replace('\['.$color[$i].'\](.+)\[\/'.$color[$i].'\]','<font
color='.$color[$i].'>\\1</font>',$str);
$str=preg_replace("/\[quote\](.+?)\[\/quote\]/is","<blockquote><font
size='1' face='Courier
New'>quote:</font><hr>\\1<hr></blockquote>",
$str);
$str=preg_replace("/\[code\](.+?)\[\/code\]/is","<blockquote><font
size='1' face='Times New Roman'>code:</font><hr
color='lightblue'><i>\\1</i><hr
color='lightblue'></blockquote>", $str);
$str=preg_replace("/\[sig\](.+?)\[\/sig\]/is","<div
style='text-align: left;color: darkgreen;margin-left:
5%'><br><br>--------------------------<br>\\1<br>--------------------------</div>",
$str);
return $str;
}
http://www.3doing.net/forums/printpage.asp?BoardID=48&ID=212
http://www.hibernate.org.cn/viewtopic.php?t=17939
打開開始--運行--鍵入gpedit.msc
按回車后打開組策略編輯器,雙擊管理模版菜單--選擇系統下拉菜單,在工作區找到“顯示‘關閉事件跟蹤程序’”,雙擊“顯示‘關閉事件跟蹤程序’”項,在設置選項卡里把“已啟用”改為“已禁用”,確定完成。
網頁播放的視頻代碼
第一種是通過調用window media player進行播放諸如:wmv,asf等格式文件:
<object align=middle class=OBJECT classid=CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95 height=320 id=MediaPlayer width=356>
<param name="ShowStatusBar" value="-1">
<param name="Filename" value="電影地址">
<embed
type=application/x-oleobject
codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701
flename=mp src=電影地址 width=356 height=320>
</embed>
</object>
第二種是通過調用replayer進行播放諸如:rm,ram等格式文件
播放框:
<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=285 id=RAOCX name=rmplay width=356>
<param name="SRC" value="影片地址">
<param name="CONSOLE" value="Clip1">
<param name="CONTROLS" value="imagewindow">
<param name="AUTOSTART" value="true">
<embed src="影片地址" autostart="true" controls="ImageWindow" console="Clip1" pluginspage="http://www.real.com"/’ target="_blank" >http://www.real.com"; width="356" height="285">
</embed>
</object>
控制框:可緊跟播放框一起
<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=27 id=video1 width=356>
<param name="_ExtentX" value="7276">
<param name="_ExtentY" value="1058">
<param name="AUTOSTART" value="0">
<param name="SHUFFLE" value="0">
<param name="PREFETCH" value="0">
<param name="NOLABELS" value="0">
<param name="CONTROLS" value="ControlPanel">
<param name="CONSOLE" value="Clip1">
<param name="LOOP" value="0">
<param name="NUMLOOP" value="0">
<param name="CENTER" value="0">
<param name="MAINTAINASPECT" value="0">
<param name="BACKGROUNDCOLOR" value="#ffffff">
<embed
type="audio/x-pn-realaudio-plugin" console="Clip1"
controls="ControlPanel" height="27" width="356" autostart="0"
_extentx="7276" _extenty="1058" shuffle="0" prefetch="0" nolabels="0"
loop="0" numloop="0" center="0" maintainaspect="0"
backgroundcolor="#ffffff">
</embed>
</object>
第三種是通過調用flashplayer進行播放:swf類的flash文檔,分別如下:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="356" height=320>
<param name="movie" value="flash地址">
<param name="quality" value="high">
<embed src="flash地址" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"’ target="_blank" >http://www.macromedia.com/go/getflashplayer"; type="application/x-shockwave-flash" width="356" height=320>
</embed>
</object>
Description: The Error means The connection with the server has been terminated.
If you check out the C:\Windows\system32\LogFiles\HTTPERR\httperr*.log
files on the distribution server, you'll likely see either
Timer_MinBytesPerSecond errors or Timer_ConnectionIdle errors. These
are caused by IIS' default settings, contained within its metabase,
which define the minimum traffic flow rate for a connection to be kept
alive and the maximum idle time allowed before a connection is dropped.
For some reason, SUS servers seem to take their good old time while
downloading updates, and these parameters are exceeded and the
distribution server drops 'em.
1) From IIS Manager, right click on the Internet Information Server
(IIS) Manager root level folder and go to Properties. Check the box to
enable direct metabase editing. Click OK.
2) Open the C:\Windows\system32\inetsrv\Me-taBase.xml file in Notepad.
Do a search for "MinFileBytesPerSec". Change the setting for
MinFileBytesPerSec from 240 to 0. Do another search, this time for
"ConnectionTimeout" to be 600. Save changes and exit.
3) Restart the IIS Admin service to effect the changes.
php.ini中文解釋
[PHP]
; PHP還是一個不斷發展的工具,其功能還在不斷地刪減
; 而php.ini的設置更改可以反映出相當的變化,
; 在使用新的PHP版本前,研究一下php.ini會有好處的
;;;;;;;;;;;;;;;;;;;
; 關于這個文件 ;
;;;;;;;;;;;;;;;;;;;
; 這個文件控制了PHP許多方面的觀點.為了讓PHP讀取這個文件,它必須被命名為
; ''php.ini''.PHP 將在這些地方依次查找該文件:當前工作目錄;環境變量PHPRC
; 指明的路徑;編譯時指定的路徑.
; 在windows下,編譯時的路徑是Windows安裝目錄.
; 在命令行模式下,php.ini的查找路徑可以用 -c 參數替代.
; 該文件的語法非常簡單.空白字符和用分號'';''開始的行被簡單地忽略(就象你可能
; 猜到的一樣). 章節標題(例如 : [Foo])也被簡單地忽略,即使將來它們可能
; 有某種的意義.
;
; 指示被指定使用如下語法:
; 指示標識符 = 值
; directive = value
; 指示標識符 是 *大小寫敏感的* - foo=bar 不同于 FOO = bar.
;
; 值可以是一個字符串,一個數字,一個 PHP 常量 (如: E_ALL or M_PI), INI 常量中的
; 一個 (On, Off, True, False, Yes, No and None) ,或是一個表達式
; (如: E_ALL & ~E_NOTICE), 或是用引號括起來的字符串("foo").
;
; INI 文件的表達式被限制于位運算符和括號.
; | bitwise OR
; & bitwise AND
; ~ bitwise NOT
; ! boolean NOT
;
; 布爾標志可用 1, On, True or Yes 這些值置于開的狀態.
; 它們可用 0, Off, False or No 這些值置于關的狀態.
;
; 一個空字符串可以用在等號后不寫任何東西表示,或者用 None 關鍵字:
;
; foo = ; 將foo置為空字符串
; foo = none ; 將foo置為空字符串
; foo = "none" ; 將foo置為字符串''none''
;
; 如果你值設置中使用常量,而這些常量屬于動態調入的擴展庫(不是 PHP 的擴展,就是
; Zend 的擴展),你僅可以調入這些擴展的行*之后*使用這些常量.
;
; 所有在 php.ini-dist 文件里設定的值與內建的默認值相同(這是說,如果 php.ini
; 沒被使用或者你刪掉了這些行,默認值與之相同).
;;;;;;;;;;;;;;;;;;;;
; 語言選項 ;
;;;;;;;;;;;;;;;;;;;;
engine = On
; 使 PHP scripting language engine(PHP 腳本語言引擎)在 Apache下有效.
short_open_tag = On
; 允許 tags 將被識別.
asp_tags = Off
; 允許ASP-style tags
precision = 14
; 浮點類型數顯示時的有效位數
y2k_compliance = Off
; 是否打開 2000年適應 (可能在非Y2K適應的瀏覽器中導致問題)
output_buffering = Off
; 輸出緩存允許你甚至在輸出正文內容之后發送 header(標頭,包括cookies)行
; 其代價是輸出層減慢一點點速度.你可以使用輸出緩存在運行時打開輸出緩存,
; 或者在這里將指示設為 On 而使得所有文件的輸出緩存打開.
output_handler = ; 你可以重定向你的腳本的所有輸出到一個函數,
; 那樣做可能對處理或以日志記錄它有用.
; 例如若你將這個output_handler 設為"ob_gzhandler",
; 則輸出會被透明地為支持gzip或deflate編碼的瀏覽器壓縮.
; 設一個輸出處理器自動地打開輸出緩沖.
implicit_flush = Off
; 強制flush(刷新)讓PHP 告訴輸出層在每個輸出塊之后自動刷新自身數據.
; 這等效于在每個 print() 或 echo() 調用和每個 HTML 塊后調用flush()函數.
; 打開這項設置會導致嚴重的運行時沖突,建議僅在debug過程中打開.
allow_call_time_pass_reference = On
; 是否讓強迫函數調用時按引用傳遞參數.這一方法遭到抗議,
; 并可能在將來版本的PHP/Zend里不再支持.
; 受到鼓勵的指定哪些參數按引用傳遞的方法是在函數聲明里.
; 你被鼓勵嘗試關閉這一選項并確認你的腳本仍能正常工作,以保證在將來版本的語言里
; 它們仍能工作.(你將在每次使用該特點時得到一個警告,而參數將按值而不是按引用
; 傳遞).
; Safe Mode 安全模式
safe_mode = Off
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
; ?Setting certain environment variables
; ?may be a potential security breach.
; 該指示包含用逗號分隔的前綴列表.安全模式中,用戶僅可以替換
; 以在此列出的前綴開頭的環境變量的值.
; 默認地,用戶將僅能 設定以PHP_開頭的環境變量,(如: PHP_FOO=BAR).
; 注意: 如果這一指示為空,PHP 將讓用戶更改任意環境變量!
safe_mode_protected_env_vars = LD_LIBRARY_PATH
; 這條指示包含一個用逗號分隔的環境變量列表,那是最終用戶將不能用putenv () 更改的.
; 這些變量甚至在safe_mode_allowed_env_vars 設置為允許的情況下得到保護.
disable_functions =
; 這條指示讓你可以為了安全的原因讓特定函數失效.
; 它接受一個用逗號分隔的函數名列表.
; 這條指示 *不受* 安全模式是否打開的影響.
; 語法高亮模式的色彩.
; 只要能被接受的東西就能工作.
highlight.string = #DD0000
highlight.comment = #FF8000
highlight.keyword = #007700
highlight.bg = #FFFFFF
highlight.default = #0000BB
highlight.html = #000000
; Misc 雜項
expose_php = Off
; 決定 PHP 是否標示它裝在服務器上的事實(例如:加在它 —PHP—給Web服務
; 發送的信號上).
; (我個人的意見,在出現什么power-by的header的時候,把這關掉.)
; 它不會有安全上的威脅, 但它使檢查你的服務器上是否安裝了PHP成為了可能.
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 30 ; 每個腳本的最大執行時間, 按秒計
memory_limit = 8388608 ; 一個腳本最大可使用的內存總量 (這里是8MB)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
; 出錯控制和登記 ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 錯誤報告是按位的.或者將數字加起來得到想要的錯誤報告等級.
; E_ALL - 所有的錯誤和警告
; E_ERROR - 致命性運行時錯
; E_WARNING - 運行時警告(非致命性錯)
; E_PARSE - 編譯時解析錯誤
; E_NOTICE - 運行時提醒(這些經常是是你的代碼的bug引起的,
;也可能是有意的行為造成的.(如:基于未初始化的變量自動初始化為一個
;空字符串的事實而使用一個未初始化的變量)
; E_CORE_ERROR - 發生于PHP啟動時初始化過程中的致命錯誤
; E_CORE_WARNING - 發生于PHP啟動時初始化過程中的警告(非致命性錯)
; E_COMPILE_ERROR - 編譯時致命性錯
; E_COMPILE_WARNING - 編譯時警告(非致命性錯)
; E_USER_ERROR - 用戶產生的出錯消息
; E_USER_WARNING - 用戶產生的警告消息
; E_USER_NOTICE - 用戶產生的提醒消息
; 例子:
; error_reporting = E_ALL & ~E_NOTICE ; 顯示所有的錯誤,除了提醒
; error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR ; 僅顯示錯誤
error_reporting = E_ALL & ~E_NOTICE ; 顯示所有的錯誤,除了提醒
display_errors = On ; 顯示出錯誤信息(作為輸出的一部分)
; 在最終發布的web站點上,強烈建議你關掉這個特性,并使用
; 錯誤日志代替(參看下面).
; 在最終發布的web站點繼續讓 display_errors 有效可能
; 暴露一些有關安全的信息,例如你的web服務上的文件路徑、
; 你的數據庫規劃或別的信息.
display_startup_errors = Off ; 甚至當display_erroes打開了,發生于PHP的啟動的步驟中
; 的錯誤也不會被顯示.
; 強烈建議保持使 display_startup_errors 關閉,
; 除了在改錯過程中.
log_errors = Off ; 在日志文件里記錄錯誤(服務器指定的日志,stderr標準錯誤輸出,或error_log(下面的))
; 正如上面說明的那樣,強烈建議你在最終發布的web站點以日志記錄錯誤
; 取代直接錯誤輸出.
track_errors = Off ; 保存最近一個 錯誤/警告 消息于變量 $php_errormsg (boolean)
;error_prepend_string = "" ; 于錯誤信息前輸出的字符串
;error_append_string = "" ; 于錯誤信息后輸出的字符串
;error_log = filename ; 記錄錯誤日志于指定文件
;error_log = syslog ; 記錄錯誤日志于系統日志 syslog (NT 下的事件日志, Windows 95下無效)
warn_plus_overloading = Off ; 當將‘+’用于字符串時警告
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
variables_order = "EGPCS" ; 這條指示描述了PHP 記錄
; GET, POST, Cookie, Environment and Built-in 這些變量的順序.
; (以 G, P, C, E & S 代表,通常以 EGPCS 或 GPC 的方式引用).
; 按從左到右記錄,新值取代舊值.
register_globals = On ; 是否將這些 EGPCS 變量注冊為全局變量.
; 若你不想讓用戶數據不在全局范圍內混亂的話,你可能想關閉它.
; 這和 track_vars 連起來用更有意義 — 這樣你可以通過
; $HTTP_*_VARS[] 數組訪問所有的GPC變量.
register_argc_argv = On ; 這條指示告訴 PHP 是否聲明 argv和argc 變量
; (注:這里argv為數組,argc為變量數)
; (其中包含用GET方法傳來的數據).
; 若你不想用這些變量,你應當關掉它以提高性能.
track_vars = On ; 使$HTTP_*_VARS[]數組有效,這里*在使用時用
; ENV, POST, GET, COOKIE or SERVER替換
post_max_size = 8M ; PHP將接受的POST數據最大大小.
gpc_order = "GPC" ; 這條指示被人反對.用 variables_order 代替.
; Magic quotes
magic_quotes_gpc = On ; 在輸入的GET/POST/Cookie數據里使用魔術引用
; (原文就這樣,呵呵,所謂magic quotes 應該是指用轉義符加在引用性的控制字符上,如 \''....)
magic_quotes_runtime= Off ; 對運行時產生的數據使用魔術引用,
; 例如:用SQL查詢得到的數據,用exec()函數得到的數據,等等
magic_quotes_sybase = Off ; 采用 Sybase形式的魔術引用(用 '''' 脫出 '' 而不用 \'')
; 自動在 PHP 文檔之前和之后添加文件
auto_prepend_file =
auto_append_file =
; 象4.04b4一樣,PHP 默認地總是在 “Content-type:” 頭標輸出一個字符的編碼方式.
; 讓輸出字符集失效,只要設置為空.
; PHP 的內建默認值是 text/html
default_mimetype = "text/html"
;default_charset = "iso-8859-1"
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
include_path = ; include 路徑設置,UNIX: "/path1:/path2" Windows: "\path1;\path2"
doc_root = ; php 頁面的根路徑,僅在非空時有效
user_dir = ; 告知 php 在使用 /~username 打開腳本時到哪個目錄下去找,僅在非空時有效
;upload_tmp_dir = ; 存放用HTTP協議上載的文件的臨時目錄(在沒指定時使用系統默認的)
upload_max_filesize = 2097152 ; 文件上載默認地限制為2 Meg
extension_dir = c:\php\ ; 存放可加載的擴充庫(模塊)的目錄
enable_dl = On ; 是否使dl()有效.
; 在多線程的服務器上 dl()函數*不能*很好地工作,
; 例如IIS or Zeus,并在其上默認為禁止
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
file_uploads = On ; 是否允許HTTP方式文件上載
;upload_tmp_dir = ; 用于HTTP上載的文件的臨時目錄(未指定則使用系統默認)
upload_max_filesize = 2M ; 上載文件的最大許可大小
; Fopen wrappers ;
;;;;;;;;;;;;;;;;;;
allow_url_fopen = On ; 是否允許把URLs當作http:.. 或把文件當作ftp:...
;;;;;;;;;;;;;;;;;;;;;;
; 動態擴展 ;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
; 若你希望一個擴展庫自動加載,用下面的語法:
; extension=modulename.extension
; 例如,在windows上,
; extension=msql.dll
; or 在UNIX下,
; extension=msql.so
; 注意,這只應當是模塊的名字,不需要目錄信息放在里面.
; 用上面的 extension_dir 指示指定擴展庫的位置.
;Windows 擴展
;extension=php_nsmail.dll
extension=php_calendar.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
extension=php_gd.dll
;extension=php_dbm.dll
;extension=php_mssql.dll
;extension=php_zlib.dll
;extension=php_filepro.dll
;extension=php_imap4r2.dll
;extension=php_ldap.dll
;extension=php_crypt.dll
;extension=php_msql2.dll
;extension=php_odbc.dll
; 注意, MySQL的支持現在是內建的,因此,不需要用它的dll
;;;;;;;;;;;;;;;;;;;
; 模塊設定 ;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
[Syslog]
define_syslog_variables = Off ; 是否定義各種的系統日志變量
; 如:$LOG_PID, $LOG_CRON, 等等.
; 關掉它是個提高效率的好主意.
; 運行時,你可以調用函數define_syslog_variables(),來定義這些變量
[mail function]
SMTP = localhost ;僅用于win32系統
sendmail_from = me@localhost.com ;僅用于win32系統
;sendmail_path = ;僅用于unix, 也可支持參數(默認的是''sendmail -t -i'')
[Debugger]
debugger.host = localhost
debugger.port = 7869
debugger.enabled = False
[Logging]
; 這些配置指示用于示例的日志記錄機制.
; 看 examples/README.logging 以得到更多的解釋
;logging.method = db
;logging.directory = /path/to/log/directory
[Java]
;java.class.path = .\php_java.jar
;java.home = c:\jdk
;java.library = c:\jdk\jre\bin\hotspot\jvm.dll
;java.library.path = .
[SQL]
sql.safe_mode = Off
[ODBC]
;uodbc.default_db = Not yet implemented
;uodbc.default_user = Not yet implemented
;uodbc.default_pw = Not yet implemented
uodbc.allow_persistent = On ; 允許或禁止 持久連接
uodbc.check_persistent = On ; 在重用前檢查連接是否還可用
uodbc.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
uodbc.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
uodbc.defaultlrl = 4096 ; 控制 LONG 類型的字段.返回變量的字節數,0 代表通過(?)0 means passthru
uodbc.defaultbinmode = 1 ; 控制 二進制數據.0 代表?????Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char
; 見有關 odbc_binmode 和 odbc_longreadlen 的文檔以得到 uodbc.defaultlrl 和 uodbc.defaultbinmode 的解釋.
[MySQL]
mysql.allow_persistent = On ; 允許或禁止 持久連接
mysql.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
mysql.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
mysql.default_port = ; mysql_connect() 使用的默認端口,如不設置,mysql_connect()
; 將使用變量 $MYSQL_TCP_PORT,或在/etc/services 下的mysql-tcp 條目(unix),
; 或在編譯是定義的 MYSQL_PORT(按這樣的順序)
; Win32環境,將僅檢查MYSQL_PORT.
mysql.default_socket = ; 用于本地 MySql 連接的默認的套接字名.為空,使用 MYSQL 內建值
mysql.default_host = ; mysql_connect() 默認使用的主機(安全模式下無效)
mysql.default_user = ; mysql_connect() 默認使用的用戶名(安全模式下無效)
mysql.default_password = ; mysql_connect() 默認使用的密碼(安全模式下無效)
; 注意,在這個文件下保存密碼通常是一個*壞*主意
; *任何*可以使用PHP訪問的用戶可以運行
; ''echo cfg_get_var("mysql.default_password")''來顯示那個密碼!
; 而且當然地,任何有讀該文件權力的用戶也能看到那個密碼.
[mSQL]
msql.allow_persistent = On ; 允許或禁止 持久連接
msql.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
msql.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
[PostgresSQL]
pgsql.allow_persistent = On ; 允許或禁止 持久連接
pgsql.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
pgsql.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
[Sybase]
sybase.allow_persistent = On ; 允許或禁止 持久連接
sybase.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
sybase.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
;sybase.interface_file = "/usr/sybase/interfaces"
sybase.min_error_severity = 10 ; 顯示的錯誤的最低嚴重性
sybase.min_message_severity = 10 ; 顯示的消息的最低重要性
sybase.compatability_mode = Off ; 與舊版的PHP 3.0 兼容的模式.若打開,這將導致 PHP 自動地
; 把根據結果的 Sybase 類型賦予它們,
; 而不是把它們全當成字符串.
; 這個兼容模式不會永遠留著,
; 因此,將你的代碼進行需要的修改,
; 并將該項關閉.
[Sybase-CT]
sybct.allow_persistent = On ; 允許或禁止 持久連接
sybct.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
sybct.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
sybct.min_server_severity = 10 ; 顯示的錯誤的最低嚴重性
sybct.min_client_severity = 10 ; 顯示的消息的最低重要性
[bcmath]
bcmath.scale = 0 ; 用于所有bcmath函數的10十進制數數字的個數number of decimal digits for all bcmath functions
[browscap]
;browscap = extra/browscap.ini
browscap = C:\WIN\SYSTEM\inetsrv\browscap.ini
[Informix]
ifx.default_host = ; ifx_connect() 默認使用的主機(安全模式下無效)
ifx.default_user = ; ifx_connect() 默認使用的用戶名(安全模式下無效)
ifx.default_password = ; ifx_connect() 默認使用的密碼(安全模式下無效)
ifx.allow_persistent = On ; 允許或禁止 持久連接
ifx.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
ifx.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
ifx.textasvarchar = 0 ; 若打開,select 狀態符返回一個 ‘text blob’字段的內容,而不是它的id
ifx.byteasvarchar = 0 ; 若打開,select 狀態符返回一個 ‘byte blob’字段的內容,而不是它的id
ifx.charasvarchar = 0 ; 追蹤從固定長度的字符列里剝離的空格.
; 可能對 Informix SE 用戶有效.
ifx.blobinfile = 0 ; 若打開,text和byte blobs 的內容被導出到一個文件
; 而不是保存到內存.
ifx.nullformat = 0 ; NULL(空)被作為空字段返回,除非,這里被設為1.
; 這種情況下(為1),NULL作為字串NULL返回.
[Session]
session.save_handler = files ; 用于保存/取回數據的控制方式
session.save_path = C:\win\temp ; 在 save_handler 設為文件時傳給控制器的參數,
; 這是數據文件將保存的路徑.
session.use_cookies = 1 ; 是否使用cookies
session.name = PHPSESSID
; 用在cookie里的session的名字
session.auto_start = 0 ; 在請求啟動時初始化session
session.cookie_lifetime = 0 ; 為按秒記的cookie的保存時間,
; 或為0時,直到瀏覽器被重啟
session.cookie_path = / ; cookie的有效路徑
session.cookie_domain = ; cookie的有效域
session.serialize_handler = php ; 用于連接數據的控制器
; php是 PHP 的標準控制器.
session.gc_probability = 1 ; 按百分比的''garbage collection(碎片整理)''進程
; 在每次 session 初始化的時候開始的可能性.
session.gc_maxlifetime = 1440 ; 在這里數字所指的秒數后,保存的數據將被視為
; ''碎片(garbage)''并由gc 進程清理掉.
session.referer_check = ; 檢查 HTTP引用以使額外包含于URLs中的ids無效
session.entropy_length = 0 ; 從文件中讀取多少字節
session.entropy_file = ; 指定這里建立 session id
; session.entropy_length = 16
; session.entropy_file = /dev/urandom
session.cache_limiter = nocache ; 設為{nocache,private,public},以決定 HTTP 的
; 緩存問題
session.cache_expire = 180 ; 文檔在 n 分鐘后過時
session.use_trans_sid = 1 ; 使用過渡性的 sid 支持,若編譯時許可了
; --enable-trans-sid
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry"
[MSSQL]
;extension=php_mssql.dll
mssql.allow_persistent = On ; 允許或禁止 持久連接
mssql.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
mssql.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
mssql.min_error_severity = 10 ; 顯示的錯誤的最低嚴重性
mssql.min_message_severity = 10 ; 顯示的消息的最低重要性
mssql.compatability_mode = Off ; 與舊版的PHP 3.0 兼容的模式.
[Assertion]
; ?????
;assert.active = On ; ?assert(expr); active by default
;assert.warning = On ; issue a PHP warning for each failed assertion.
;assert.bail = Off ; don''t bail out by default.
;assert.callback = 0 ; user-function to be called if an assertion fails.
;assert.quiet_eval = 0 ; eval the expression with current
error_reporting(). set to true if you want error_reporting(0) around
the eval().
[Ingres II]
ii.allow_persistent = On ; 允許或禁止 持久連接
ii.max_persistent = -1 ; 持久連接的最大數.-1 代表無限制
ii.max_links = -1 ; 連接的最大數目(持久和非持久).-1 代表無限制
ii.default_database = ; 默認 database (format : [node_id::]dbname[/srv_class]
ii.default_user = ; 默認 user
ii.default_password = ; 默認 password
[Verisign Payflow Pro]
pfpro.defaulthost = "test.signio.com" ; 默認的 Signio 服務器
pfpro.defaultport = 443 ; 連接的默認端口
pfpro.defaulttimeout = 30 ; 按秒計的默認超時時間
; pfpro.proxyaddress = ; 默認的代理的 IP 地址(如果需要)
; pfpro.proxyport = ; 默認的代理的端口
; pfpro.proxylogon = ; 默認的代理的登錄(logon 用戶名)
; pfpro.proxypassword = ; 默認的代理的密碼
[Sockets]
sockets.use_system_read = On ; 使用系統的read() 函數替代 php_read()封裝
; Local Variables: (局部變量)
; tab-width: 4
; End:
-------
http://cosoft.org.cn/
湖北省軟件公共開發平臺http://gro.clinux.org/
1、到底在哪用cascade="..."?
cascade屬性并不是多對多關系一定要用的,有了它只是讓我們在插入或刪除對像時更方便一些,只要在cascade的源頭上插入或是刪除,所有
cascade的關系就會被自己動的插入或是刪除。便是為了能正確的cascade,unsaved-value是個很重要的屬性。Hibernate通
過這個屬性來判斷一個對象應該save還是update,如果這個對象的id是unsaved-value的話,那說明這個對象不是
persistence
object要save(insert);如果id是非unsaved-value的話,那說明這個對象是persistence
object(數據庫中已存在),只要update就行了。saveOrUpdate方法用的也是這個機制。
2、到底在哪用inverse="ture"?
inverse屬性默認是false的,就是說關系的兩端都來維護關系。這個意思就是說,如有一個Student,
Teacher和TeacherStudent表,Student和Teacher是多對多對多關系,這個關系由TeacherStudent這個表來表
現。那么什么時候插入或刪除TeacherStudent表中的記錄來維護關系呢?在用hibernate時,我們不會顯示的對
TeacherStudent表做操作。對TeacherStudent的操作是hibernate幫我們做的。hibernate就是看hbm文件中指
定的是"誰"維護關系,那個在插入或刪除"誰"時,就會處發對關系表的操作。前提是"誰"這個對象已經知道這個關系了,就是說關系另一頭的對象已經set
或是add到"誰"這個對象里來了。前面說過inverse默認是false,就是關系的兩端都維護關系,對其中任一個操作都會處發對表系表的操作。當在
關系的一頭,如Student中的bag或set中用了inverse="true"時,那就代表關系是由另一關維護的(Teacher)。就是說當這插
入Student時,不會操作TeacherStudent表,即使Student已經知道了關系。只有當Teacher插入或刪除時才會處發對關系表的
操作。所以,當關系的兩頭都用inverse="true"是不對的,就會導致任何操作都不處發對關系表的操作。當兩端都是inverse=
"false"或是default值是,在代碼對關系顯示的維護也是不對的,會導致在關系表中插入兩次關系。
在一對多關系中inverse就更有意義了。在多對多中,在哪端inverse="true"效果差不多(在效率上)。但是在一對多中,如果要一方維護關
系,就會使在插入或是刪除"一"方時去update"多"方的每一個與這個"一"的對象有關系的對象。而如果讓"多"方面維護關系時就不會有update
操作,因為關系就是在多方的對象中的,直指插入或是刪除多方對象就行了。當然這時也要遍歷"多"方的每一個對象顯示的操作修關系的變化體現到DB中。不管
怎樣說,還是讓"多"方維護關系更直觀一些。
3、cascade和inverse有什么區別?
可以這樣理解,cascade定義的是關系兩端對象到對象的級聯關系;而inverse定義的是關系和對象的級聯關系。
4、
net.sf.hibernate.ObjectDeletedException: deleted object would be
re-saved by cascade (remove deleted object from associations): 2, of
class: Xxxxx
這個問題出現在要刪除關系的一頭時。如,要刪除一個已經和Student有關系的Teacher。當tx.commit();時才會拋出這個異常。這時一
個在關系另一頭的Student對象中的Set或是List中把這個Teacher對象顯示的remove掉,再session.delete(這個
teacher);。這是為了防止在Student端有cascade時把這個Teacher對象再存回DB。所以,這個異常的只有在Student的關
系定義中有cascade="...",而且沒有像上面說的顯示的解除關系時才會出現。所以防止出現這個異常的方法就是:1,在Student端不用
cascade;2,或是用cascade的話,就顯示的刪除對像中的關系。 3,在Teacher端要用cascade
5、net.sf.hibernate.HibernateException: identifier of an instance of my.MyObject altered from N to N
這個異常其時不是多對多中常遇到的,但是這個異常的提示不make
sense,所以提一下,是因為id的java對象中的type和hbm文件中定義的不一樣,如:java中用long,而hbm中用type=
"integer",并且generator用的是identity時就會出現
6、(To be add) 把hibernate遇到常見異常會一點點加上來的