php5 NTS和TS版本的区别,所谓的线程安全和非安全

php5 non-thread-safe和thread-safe这两个版本的区别

从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?下面聚友将为您讲述。
先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源。

再来看PHP的两种执行方式:ISAPI和FastCGI。FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)。而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。

dedecms 图片水印加不上解法一种,水印图片要真如其名!

今天一个朋友说他的dedecms上传图片加不上水印了
经调试代码最终发下啼笑皆非的原因是,
后台设置水印图片是gif ,但是上传了一个jpeg的图片,仅仅是后缀是gif,导致了php的 imagecreatefromgif 出错
同样的,后台设置水印图片是png,你也得上传一个真的png图片,而不仅仅后缀是png

切,切!