Time of Update: 2018-12-08
在PHP開發中工作裡非常多使用到逾時處理到逾時的場合,我說幾個情境: 1. 非同步擷取資料如果某個後端資料來源擷取不成功則跳過,不影響整個頁面展現 2. 為了保證Web伺服器不會因為當個頁面處理效能差而導致無法訪問其他頁面,則會對某些頁面操作設定 3. 對於某些上傳或者不確定處理時間的場合,則需要對整個流程中所有逾時設定為無限,否則任何一個環節設定不當,都會導致莫名執行中斷 4. 多個後端模組(MySQL、Memcached、HTTP介面),為了防止單個介面效能太差,導致整個前面擷取資料太緩慢,
Time of Update: 2018-12-08
檔案處理函數 1.檔案操作. 開啟檔案: 開啟指定的檔案時會返回相應的對象,若不存在指定的檔案,那麽可能會自動建立這個檔案。 resource fopen(string filename,string mode [,int use_include_path][,resource context]); filename 可以是包含檔案路徑的檔案名稱,也可以是某種協議給出的URL(開啟遠程檔案).為了避免系統切換帶來的麻煩,採用'/'作為路徑分隔字元.
Time of Update: 2018-12-08
如果值沒有重複的情況,可以先用array_flip()來交換鍵和值,然後krsort(),最後再array_flip()交換回來,就可以比較大小了。如果要截取數組,可用array_slice()。 如果有值重複的情況,就要用到一些排序演算法了,不過php有很強大的函數uasort(),使用自訂的比較函數對數組中的值進行排序並保持索引關聯,usort()則會重建索引。 複製代碼 代碼如下:function cmp($a, $b){ if ($a["vote_num"] ==
Time of Update: 2018-12-08
1.使用者訪問伺服器時,利用PHP的超級全域變數$_SERVER數組中欄位['HTTP_USER_AGENT'] 擷取訪問使用者的所有資訊我訪問時的$_SERVER['HTTP_USER_AGENT'] 字串 :Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/5.0.342.3 Safari/533.22.利用Regex匹配以上字串,使用者的瀏覽器
Time of Update: 2018-12-08
支援文字浮水印、圖片浮水印 支援浮水印的位置隨機或固定(九宮格) 浮水印透明度設定(圖片浮水印和文字浮水印都支援) 文字浮水印的字型、顏色、大小設定 圖片浮水印的背景透明 複製代碼 代碼如下:<?php /** * 加浮水印類,支援文字圖片浮水印的透明度設定、浮水印圖片背景透明。 * 日期:2011-09-27 * 作者:www.jb51.net * 使用: * $obj = new WaterMask($imgFileName); //執行個體化對象 *
Time of Update: 2018-12-08
部署時間:2012-07-24 OS環境:CentOS 6.1 nginx:nginx-1.2.2 PHP:PHP5.3.14 0、安裝依賴包 複製代碼 代碼如下:yum install openssl-devel pcre-devel zlib-devel libjpeg-devel libpng-devel freetype-devel gcc make 1、添加 www 使用者用來執行nginx 複製代碼 代碼如下:useradd -M -r -s /sbin/nologin -d
Time of Update: 2018-12-08
一.字串插入 雙引號與單引號的區別: 1.雙引號的使用: 複製代碼 代碼如下:<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <?php //雙引號可以解析變數和逸出字元 $username = "jack"; echo "his name is $username!"; echo "<br/>"; $username = "小東"; //如果是英文的驚嘆號會正常解析變數
Time of Update: 2018-12-08
中文字元編碼研究系列第三期,PHP函數篇掌握ord()與 chr()函數應用,上期[PHP基礎篇詳解ASCII碼對照表與字元轉換]一文中瞭解了ASCII碼和字元轉換的方法,但使用時發現在字元轉換之間需要兩個特殊的函數,用於字元與十進位之間的轉換,ord()函數把字元轉換為十進位數字,chr()函數把十進位數字轉化為字元,在二進位,八進位,十進位與十六進位之間充當橋樑的作用。 一,ord()函數的應用 ord()函數用於返回一個字元的ASCII值,最基本的用法如擷取a 的ASCII值ord('a'
Time of Update: 2018-12-08
php代碼類: 複製代碼 代碼如下:<?php /** * Copyright (c) 2011 - 01 XatuDream * XatuDream All Rights Reserved. * Support:185390516.qzone.qq.com * QQ:185390516 * Author:Lau Version:1.01 * Date:2010-08-12 09:28:32 */ ! defined ( 'WORKSPACE' ) && exit (
Time of Update: 2018-12-08
複製代碼 代碼如下:$price=$row['price']; //原價 $nowprice=$row['nowprice']; //現價 $jiesheng=$price-$nowprice; //節省金額 //$discount折扣計算 if ( $nowprice > 0 ) { $discount = round(10 / ($price / $nowprice), 1); } else { $discount = 0; } if ( $discount <= 0 )
Time of Update: 2018-12-08
比如當前檔案是放在(d:\www\)下,檔案名稱是test.php。 測試的代碼如下: 複製代碼 代碼如下:<?php echo __FILE__ ; // 取得當前檔案的絕對位址,結果:D:\www\test.php echo dirname(__FILE__); // 取得當前檔案所在的絕對目錄,結果:D:\www\ echo dirname(dirname(__FILE__)); //取得當前檔案的上一層目錄名,結果:D:\ ?> 使用方法提示, dirname(__FILE_
Time of Update: 2018-12-08
1.目前大多數php環境裡使用的都是不帶d的memcache版本,這個版本出的比較早,是一個原生版本,完全在php架構內開發的。與之對應的帶d的memcached是建立在libmemcached的基礎上,所以相對來說,memcached版本的功能更全一些。 memcache:http://cn2.php.net/manual/en/book.memcache.php memcached:http://cn2.php.net/manual/en/book.memcached.php
Time of Update: 2018-12-08
當 HTML 表單 (HTML Form) 的 method 為 get 時,$_GET 用來擷取 HTML Form 的資料。 當 HTML 表單 (HTML Form) 的 method 為 post 時 , $_POST 用來擷取 HTML Form 的資料。 HTML Form 的get 和post 的區別,請參見HTML Form 的get 和post 的區別。 擷取 HTML 表單 (HTML Form) 文本輸入框 (input type="text") 資料 下面是一個
Time of Update: 2018-12-08
不過由於手機的參數多,且不同的手機其參數差異大,所以參數表結構通常是縱表(一個參數是一行),而不是橫表(一個參數是一列),此時使用若干參數來取結果,通常就是把每個單獨參數來取結果,再一起取交集。 假定每個參數會包含一千個左右的唯一結果(id int),以此為前提來類比產生一些資料: 複製代碼 代碼如下:<?php $rand = function() { $result = array(); for ($i = 0; $i < 1000; null) { $value =
Time of Update: 2018-12-08
用來作為解決php以root許可權執行一些普通使用者不能執行的命令或應用的參考。 其實php裡的popen()函數是可以解決這個問題的,但是由於某些版本的linux(如我使用的Centos 5)對系統安全的考慮, 使得這個問題解決起來麻煩了好多。先來看一個網友使用popen()函數的例子。 複製代碼 代碼如下:/* PHP中如何增加一個系統使用者 下面是一段常式,增加一個名字為james的使用者, root密碼是 louis。僅供參考 */ $sucommand = "su root
Time of Update: 2018-12-08
在PHP中解析JSON主要用到json_encode和json_decode兩個PHP JSON函數,比PHP解析XML方便很多,下面詳細介紹下PHP JSON的使用。JSON基礎介紹 JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。 JSON主要有兩種結構: “名稱/值”對的集合,在PHP中可以理解為關聯陣列 (associative array)。 值的有序列表(An ordered list of
Time of Update: 2018-12-08
array_multisort — 對多個數組或多維陣列進行排序 說明 bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] ) array_multisort (PHP 4, PHP 5) 如果成功則返回 TRUE,失敗則返回 FALSE。 array_multisort() 可以用來一次對多個數組進行排序,或者根據某一維或多維對多維陣列進行排序。
Time of Update: 2018-12-08
傳值賦值:當將一個運算式的值賦予一個變數時,整個原始運算式的值被賦予到目標變數。這意味著,例如,當一個變數的值賦予另一個變數時,改變其中一個變數的值,將不會影響到另一個變數。 複製代碼 代碼如下:<?php <?php $a=123; $a=123; $b=$a; $b=&$a; $a=321; $a=321; Echo”$a,$b”;//顯示”321,123” Echo”$a,$b”;//顯示”321,321” ?> ?>
Time of Update: 2018-12-08
如果使用sql語句做的話 工作量太大了,於是嘗試自己寫一個交叉表的類,好二話不說,我們看看代碼 複製代碼 代碼如下:/** * 基本交叉表 * @author hugh * */ class Pivot { private $HORIZONTAL_TOTAL_FIELD = 'total'; private $VERTICAL_TOTAL_FIELD = 'total'; private $data; private $topPivot; private $leftPivot; private
Time of Update: 2018-12-08
數字索引數組: bool usort( array &$array, callback $cmp_function ) usort函數對指定數組(參數1)按指定方式(參數2)進行排序。 當我們想對多維陣列進行排序時,多維陣列的每個元素又是一數群組類型,而兩個數組如何比較大小?這是需要使用者自訂的(是按每個數組的第一元素比較還是…)。 複製代碼 代碼如下:<?php //定義多維陣列 $a = array( array("sky", "blue"), array("apple", "