Time of Update: 2016-11-22
1、通過 $_SERVER['HTTP_USER_AGENT'] 來寫一個php判斷瀏覽器類型的辦法。function my_get_browser(){if(empty($_SERVER['HTTP_USER_AGENT'])){return '命令列,機器人來了!';}if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 9.0')){return
Time of Update: 2016-11-22
最近在做CactiEZ的二次開發, 在將對象轉化成json串之後發現中文變成了unicode編碼, 幾經周折終於解決了。 記錄下解決辦法,希望能夠協助到遇到同樣問題的朋友。 //json_encode()函數在php5.4.0之後可以通過傳入參數JSON_UNESCAPED_UNICODE保持中文原樣, 不進行Unicode 轉碼.echo unicode_decode(json_encode($response));function unicode_decode($name){ //
Time of Update: 2016-11-22
//輸出縮圖地址function post_thumbnail_src() { global $post; if ($values = get_post_custom_values("thumb")) { //輸出自訂網域圖片地址 $values = get_post_custom_values("thumb"); $post_thumbnail_src = $values [0]; } elseif
Time of Update: 2016-11-22
<?php// +----------------------------------------------------------------------// | JuhePHP [ NO ZUO NO DIE ]// +----------------------------------------------------------------------// | Copyright (c) 2010-2015 http://juhe.cn All rights reserved.
Time of Update: 2016-11-22
序列化是將變數轉換為可儲存或傳輸的字串的過程;還原序列化就是在適當的時候把這個字串再轉化成原來的變數使用。這兩個過程結合起來,可以輕鬆地儲存和傳輸資料,使程式更具維護性。兄弟連PHP培訓(www.lampbrother.net) 1. serialize和unserialize函數 這兩個是序列化和還原序列化PHP中資料的常用函數。 <?php $a = array('a' => 'Apple' ,'b' =>
Time of Update: 2016-11-22
class deque{public $queue = array();public $length = 0;public function rpop(){$node = array_pop($this->queue);$this->countque();return $node;}public function rpush($node){array_push($this->queue, $node);$this->countque();return $this->
Time of Update: 2016-11-22
來說下php數組的遍曆,可能很多人會質疑,數組的遍曆有啥好說的,一個for迴圈,不就出來了,其實不然,for迴圈遍曆php數組是最糟糕的php代碼,下面對比詳細分析下。 大家都知道C++,C#在定義數組的時候會在棧區分配連續固定大小的記憶體空間給陣列變數,C++一般用for迴圈遞增位移量遍曆數組;C#除了for迴圈,還可以使用foreach遍曆;那php呢??經常會看到下面的代碼:<?php$arr =
Time of Update: 2016-11-22
引用傳遞可以將一個變數通過引用傳遞給函數,這樣該函數就可以修改其參數的值。文法如下:<?php function foo(&$var) { $var++; } $a=5; foo($a); // $a is 6 here?>注意在函數調用時沒有引用符號——只有函數定義中有。光是函數定義就足夠使參數通過引用來正確傳遞了。在最近版本的 PHP 中如果把 & 用在 foo(&$a);
Time of Update: 2016-11-22
array() 建立數組,帶有鍵和值。如果在規定數組時省略了鍵,則產生一個整數鍵,這個 key 從 0 開始,然後以 1 進行遞增。 要用 array() 建立一個關聯陣列,可使用 => 來分隔鍵和值。 要建立一個空數組,則不傳遞參數給array(): $new = array();注意:array()實際上是一種語言結構 (language construct),通常用來定義直接量數組,但它的用法和函數的用法很相似,所以我們把它也列到手冊中PHP array() 例子<
Time of Update: 2016-11-22
這幾天在做項目時,遇到了需要大量匯入資料的情況,使用者將excel表格提交後,需要我們後台這邊將excel表格資訊中的內容全部插入到資料表中。當然,前提是使用者給我們的excel表格中的資訊必須和我們表中的欄位資訊時對應的才行,下面是我這邊後台進行大量匯入資料的實現步驟。首先我們需要下載phpExcelphpExcel是用來操作Office Excel
Time of Update: 2016-11-22
php 採集 Snoopy 詳解 PHP採集利器snoopy應用詳解 Snoopy是一個php類,用來類比瀏覽器的功能,可以擷取網頁內容,發送表單。Snoopy正確運行需要你的伺服器的PHP版本在4以上,並且支援PCRE(Perl Compatible Regular Expressions),基本的LAMP服務都支援。 一、Snoopy的一些特點: 1.抓取網頁的內容 fetch 2.抓取網頁的常值內容 (去除HTML標籤) fetchtext 3.抓取網頁的連結,表單
Time of Update: 2016-11-22
<?php// 處理開始元素函數function startElementHandler($parser, $element, $attributes) {echo "元素開始:".$element."<br>";if($attributes) {echo "屬性:";foreach ( $attributes as $key => $value ) { echo
Time of Update: 2016-11-22
由於PHP的工作機制,它並沒有一個daemon線程,來定時地掃描session資訊並判斷其是否失效。當一個有效請求發生時,PHP會根據全域變數 session.gc_probability/session.gc_divisor(同樣可以通過php.ini或者ini_set()函數來修改) 的值,來決定是否啟動一個GC(Garbage Collector)。預設情況下,session.gc_probability = 1,session.gc_divisor
Time of Update: 2016-11-22
/** * 1. strtr 轉換指定字元 * * string strtr ( string $str , string $from , string $to ) * string strtr ( string $str , array $replace_pairs ) * * 該函數返回 str 的一個副本,並將在 from 中指定的字元轉換為 to 中相應的字元。 * 如果 from 與 to 長度不相等,那麼多餘的字元部分將被忽略。 */$str =
Time of Update: 2016-11-22
PHP擷取目前時間(年,月,日,小時,分,秒) 1echo date( "h:i "); date (PHP 3, PHP 4 ) date — 格式化一個本地時間/日期 說明 string date ( string format [, int timestamp]) 返回將整數 timestamp 按照給定的格式字串而產生的字串。如果沒有給出時間戳記則使用本地目前時間。 注: 有效時間戳記典型範圍是格林威治時間 1901 年 12 月 13 日 20:45:54
Time of Update: 2016-11-22
<?php $a = 10; function zjt($a) //定義一個函數zjt() { global $a; for($i = 1;$i <= $a;$i++ ) //控制輸出的行數 {
Time of Update: 2016-11-22
幾種程式設計語言的foreach迴圈比較 foreach迴圈作為“for”迴圈的“增強版本”,由於能以更簡單的方式遍曆數組元素,已經在幾種程式設計語言(Java、C#、PHP)中得到了廣泛的應用。但在不同的語言中,foreach迴圈的具體形式又不盡相同。下面,我們就來比較下Java、C#和PHP三種語言中foreach迴圈的具體結構及應用執行個體: 1. Java: JDK1.5後提供了foreach迴圈 文法格式:for(type variableName :
Time of Update: 2016-11-22
二維條碼/二維碼(2D code.QR Code-abbreviated from Quick Response Code, a form of 2D code-is the most known one)就是用某種特定的幾何圖形按一定規律在平面(二維方向上)分布的黑白相間的圖形記錄資料符號資訊的,QR碼是常見的一種二維碼。 PHP產生方式主要以下兩種:<?php/** * 二維碼產生 * * @since 2013/02/27 *//** * 1.google open
Time of Update: 2016-11-22
<?phpfunction arr_sort($data){ $len = count($data); for($i=0;$i<$len;$i++){ $ilen = count($data[$i]);for($j=0;$j < $ilen;$j++){ $m = $data[$i][$j]; $mpos1 = $i; $mpos2 = $j; if( !isset($data[$i][$j+1]) ){$ii = $i+1;$jj = 0;
Time of Update: 2016-11-22
最佳化 PHP 代碼技巧1. 如果一個方法能被靜態,那就聲明他為靜態,速度可提高 1/4;2. echo 的效率高於 print,因為 echo 沒有傳回值,print 返回一個整型;3. 在迴圈之前設定迴圈的最大次數,而非在在迴圈中;4. 銷毀變數去釋放記憶體,特別是大的數組;5. 避免使用像__get, __set, __autoload 等魔術方法;6. requiere_once()比較耗資源;7. 在 includes 和 requires 中使用絕對路徑,這樣在分析路徑花的時間更少;