Time of Update: 2017-01-13
在 PHP5 時代,PHP 的參數已經支援 type hint(除了基本類型),想必大家應該很熟悉;後來 PHP7 時代來臨,PHP 也可以指定傳回值的類型(以及基本類型的 type hint)。但我們可能還有一種需求:除了指定的 type hint,參數或者傳回值也能定義可以為 null,舉個例子,假如我們有一個 UserRepository 類,有一個方法叫 find($id),此方法可返回一個 User 對象,也可返回 null,在 PHP7.1
Time of Update: 2017-01-13
PHPer 們可能都知道 list 的用法,簡單來說就是可以在一個表達試裡通過數組對多個變數賦值:$values = array('value1', 'value2');$list($v1, $v2) = $values;感覺是不是很方便呢?在 PHP 7.1 中,還能更省事兒:[$v1, $v2] = ['foo', 'bar'];這還不是最給力的,在 PHP 7.1 裡我們還可以指定索引值來賦值,從而不用關心數組元素的順序:list('v1' => $value1, 'v2'
Time of Update: 2017-01-13
超連結下載如果瀏覽器支援超連結的方式下載檔案,會在點擊超連結的時候自動下載檔案。下面我們來測試一下通過超連結下載檔案:<a href="/Uploads/test.zip">通過超連結的方式下載檔案</a><br> 當我們點擊的時候如下所示:超連結下載檔案通過超連結下載圖片:我們通過超連結下載圖片時,會直接在瀏覽器開啟顯示,然後我們需要再儲存到指定路徑儲存下來: <a href="/Uploads/QC8
Time of Update: 2017-01-13
java裡多線程就是一個new thread的事情,php依賴apache靠著linux底層有一個多線程的辦法。今天說說如果你無法操控apache的伺服器,如何類比php並發<?phpif(function_exists('date_default_timezone_set')) { date_default_timezone_set('PRC');} function a(){ $time = time();
Time of Update: 2017-01-13
解決Notice: Undefined variable報錯雖然 PHP不需要預先聲明變數,但是依然強烈推薦大家聲明以避免因為忘記給變數賦值而引起的一些安全性漏洞及可能的BUG。所以PHP以非常低的警示層級(E_NOTICE)來提醒大家正在使用一個未聲明的變數。當然解決以上報錯有如下幾種方法,根據情境選擇適合自己的:1.(推薦)提前聲明變數,例如當你想要為一個未聲明的變數連接字串的時候。或者使用isset()/!empty()來檢查是否已經聲明:$value = ""; //
Time of Update: 2017-01-13
PHP中對數組的處理是最常用的必備技能之一。自己總結了一下幾個最常用的處理數組的進階函數。1. array_merge()合并數組,將一個或多個數組的單元合并起來,一個數組中的值附加在前一個數組的後面,最後返回一個數組。關聯陣列:有相同的字串鍵名時,則該鍵名後面的值將覆蓋前一個值索引數組:後面的值將不會覆蓋原來的值,而是附加到後面array array_merge (array array1 array2…,arrayN) 例子:<?php $a =
Time of Update: 2017-01-13
連接埠複用技術,這樣就可以很好的解決驚群問題和stream_socket_server效能瓶頸的問題.<?php/** * 多進程IO複用libevent * 同時處理多個串連 * 連接埠複用---建議php7 */class Xtgxiso_server{ public $socket = false; public $master = array();
Time of Update: 2017-01-13
前面我們花了一段時間來搭建高效能的socket服務,可以同時處理大量的串連,但這是在沒有具體業務的情況下。 如果我們啟用了一個單進程的server,但裡面的一個業務耗時1秒,那麼在這1秒內是阻塞的,後續的請求會等待,如果並發三個請求,那麼三個請求的執行時間會分別昌1秒,2秒,3秒.提高並發的方法有以下幾種: 1:多啟動進程,提高並發數 2:最佳化業務,
Time of Update: 2017-01-13
如今我們無論架設個人部落格,還是企業網站,甚至大資料內容網站,基本上不需要自己重新寫程式,畢竟網上有很多免費開源的CMS程式可以使用。老蔣常用的CMS包括WordPress,適合內容和自訂稍微自動化一些的網站,比如老蔣部落就採用這款CMS,同時使用較多的就是ZBLOG
Time of Update: 2017-01-13
一般我們調用ZBLOG PHP文章的時候會用到最新文章、點擊數、評論數文章調用(方法在這裡),同時我們還可能 會在一些特定的位置調用本周、本月、本年度的熱門文章。剛巧在給一個企業網站客戶做主題的時候側邊有一個空位置不懂放什麼內容,於是就給他調用本年度熱門產品內容。這裡參考@天興整理的方法記錄下來,以後有用到直接也可以複製。 代碼如下複製代碼 {php} $stime = time();$ytime = 90*24*60
Time of Update: 2017-01-13
自動截取ZBLOG PHP摘要字元數量內容的函數無論我們是在使用WordPress,還是ZBLOG
Time of Update: 2017-01-13
第一、後台開啟偽靜態外掛程式 我們需要將網站布局起來,然後先後預設的"外掛程式管理"中啟動"靜態管理中心"外掛程式,然後在網站設定中將會看到"靜態化管理中心"。 然後我們根據自己的實際需求和路徑設定偽靜態規則。 設定完畢提交儲存之後,我們需要設定管理員網站偽靜態規則。 第二、設定管理員網站偽靜態規則 1、網站規則 代碼如下複製代碼
Time of Update: 2017-01-13
P>對 PHP 之 函數 sprintf() 的學習研究筆記sprintf將字串格式化。文法: string sprintf(string format, mixed [args]...);傳回值: 字串函式種類: 資料處理 內容說明 本函式用來將字串格式化。參數 format 是轉換的格式,以百分比符號 % 開始到轉換字元為止。而在轉換的格式間依序包括了1. 填空字元。0 的話表示空格填 0;空格是內定值,表示空格就放著。2. 對齊。內定值為向靠右對齊,負號表向靠左對齊。3.
Time of Update: 2017-01-13
樹型目錄看起來新穎別緻,而網上的大多是JAVASCRIPT和PHP的結合,本人這一個是用全用PHP4寫的,用了SESSION功能,請大家看了多提意見。(本人在WIN98/PWS/PHP4下測試通過) <? // 2001/02/23 //ZHANGHEXUN //樹型目錄 session_start(); //開始一個SESSION if (!session_is_registered("$office_action")){ $office_action=0;
Time of Update: 2017-01-13
使用者狀態管理(session support)是 PHP 4.0 一個讓大家期待已久的新功能。在 PHP 3.0 的時代,程式設計員必須使用其它人寫好的函式庫來實作狀態管理功能,或者就乾脆放棄這項功能不用算了。而狀態管理功能的缺乏事實上是 PHP 3.0 最讓人感到失望的地方之一。不過現在狀況已經得到改變,從 PHP 4.0 的早期測試版開始,使用者狀態管理便已經成為 PHP
Time of Update: 2017-01-13
<?php // created by joe lumbroso // see some other good php3 scripts // goto http://www.dtheatre.com/scripts echo "<font color="red"><blink><b>Pinging</b></blink></font><br>"; $to_ping = "dtheatre.com";
Time of Update: 2017-01-13
這個問題是當我自已實現了統計計數之後,我想將它的輸出用在我的不支援PHP功能的頁面中,那麼應該如何做呢?主要的解決辦法是輸出一段javascript指令碼即可。這個是很有用的,比如實現動態新聞, 廣告輪詢,當然這裡是講如何把某個程式的下載計數輸出到非PHP頁面中去。 先讓我們設想一下:我已經有了一個程式下載計數檔案在我的網站上,如../count/download.db。 檔案格式為: 索引|檔案名稱提示|連結|計數
Time of Update: 2017-01-13
因為某程式要用輸出UTF-8編碼..但是原資料是GBK編碼的 百度 找了很多有關內碼轉換的類..但是缺點很多.又不支援GBK TO UTF-8 不過一個一個找還是在PHP官方的FAQ找到了mb_convert_encoding() 該函數要在PHP4.0.6以上才有..聽說有的 想關連結: http://cn.php.net/manual/zh/function.mb-convert-encoding.php 做一個GBK To UTF-8 < ?php
Time of Update: 2017-01-13
做一個後台登陸需要用到校正碼,前台的使用者跟蹤需要用到SessionID,當然,預設的PHP開啟了Session以後就有了一個SessionID,但是我需要自己的,並且能夠儲存進資料庫,那麼我就嘗試了一下,構造了以下的函數。/****** 產生Session ID ******/基本的思路: 是把當前微秒的時間擷取, 然後產生以個隨機數字, 把隨機數字和目前時間相加後加密一下, 最後再截取需要的長度/*函數名稱:create_sess_id()函數作用:產生以個隨機的會話ID參
Time of Update: 2017-01-13
直接安裝:centos安裝 : 代碼如下複製代碼 rpm -qa |grep php-gd 如果不存在那麼就執行下面的: 代碼如下複製代碼 yum install php-gd 最後重啟apache 代碼如下複製代碼 service httpd restart ubuntu安裝: 代碼如下複製代碼 apt-get install php-dg windows安裝:找到php.ini,開啟內容,找到: