Time of Update: 2016-12-02
介紹聊天應用程式在網上非常常見。開發人員在構建這類應用程式時的選擇也很多。這篇文章介紹了如何?基於PHP-AJAX的聊天應用程式,並且不需要重新整理頁面就可以發送和接收訊息。核心邏輯在定義應用程式的核心功能之前,先來看一看聊天應用程式的基本外觀,如以下所示:通過聊天視窗底部的輸入框輸入聊天文本。點擊Send按鈕,就開始執行函數set_chat_msg。這是一個基於Ajax的函數,因此無需重新整理頁面就可以將聊天文本發送到伺服器。程式在伺服器中執行chat_send_ajax.php以及使用者名稱
Time of Update: 2016-12-02
/** *對內容中的關鍵詞添加連結 *只處理第一次出現的關鍵詞,對已有連結的關鍵不會再加連結,支援中英文 *$content:string 原字串 *$keyword:string 關鍵詞 *$link:string,連結 */ public static function yang_keyword_link($content,$keyword,$link){ //排除圖片中的關鍵詞 $content = preg_replace( '|(<img[^>]*?)('
Time of Update: 2016-12-05
php eval() 函數運算元組:'value1','key2'=>'value2','key3'=>'value3','key4'=>'value4')";$arr = eval("return $data;");var_dump($arr); //array?>運行結果:array(4) { ["key1"]=> string(6) "value1" ["key2"]=> string(6) "value2" ["key3"]=> string(6) "value3" ["key4
Time of Update: 2016-12-05
“一般來說,總是把類的屬性定義為private,這更符合現實的邏輯。但是,對屬性的讀取和賦值操作是非常頻繁的,因此在PHP5中,預定義了兩個函數“__get()”和“__set()”來擷取和賦值其屬性,以及檢查屬性的“__isset()”和刪除屬性的方法“__unset()”。我們為每個屬性做了設定和擷取的方法,在PHP5中給我們提供了專門為屬性設定值和擷取值的方法,“__set()”和“__get()”這兩個方法,這兩個方法不是預設存在的,而是我們手工添加到類裡面去的,像構造方法(__cons
Time of Update: 2016-12-05
本文執行個體講述了Yii架構實現郵箱啟用的方法。分享給大家供大家參考,具體如下:控制器://發送郵箱,啟用帳號public function actionEmail(){ $email=Yii::$app->request->get('email'); //數位簽章 $em_1=md5($email); //郵箱發送 $mail= Yii::$app->mailer->compose(); $mail->setTo($email);
Time of Update: 2016-12-05
本文執行個體講述了Yii架構中sphinx索引配置方法。分享給大家供大家參考,具體如下:請先將var/test/documents.sql匯入資料庫,並配置好以下的MySQL使用者密碼資料庫#源定義source mysql{ type = mysql sql_host = localhost sql_user = root sql_pass = root sql_db = yii2 sql_port
Time of Update: 2016-12-05
如下所示:"; echo isValid($expstrB); echo ""; echo isValid($expstrC); ?> 頁面資訊:缺少右括弧) 運算式匹配 缺少左括弧( 以上就是小編為大家帶來的PHP判斷運算式中括弧是否匹配的簡單一實例全部內容了,希望大家多多支援指令碼之家~
Time of Update: 2016-12-05
本文執行個體講述了Yii實現文章列表置頂功能的方法。分享給大家供大家參考,具體如下:我的理解:首先點擊擷取當前ID,model層查詢所有sort欄位,遍曆資料,得到最大值,修改資料,替換資料,即可。:模型層://顯示列表public function lists1(){ $arr=Yii::$app->db->createCommand("select * from acticle join type on type.t_id=acticle.t_id order by sort
Time of Update: 2016-12-05
首先向大家講解一下實現的方法。要實現多檔案上傳,我們可以在form表單中添加多個input file域,然後將這些input file的name屬性設定為相同的名稱且使用數組的形式命名,例如filename[]。至於檔案上傳的php代碼和單個檔案上傳是一樣的道理。下面看一個多檔案上傳的執行個體:html檔案example.htmlphp檔案my_parser.php"; } else { echo "move_uploaded_file function failed for "
Time of Update: 2016-12-05
前言註冊時經常需要用到簡訊驗證碼,本文記錄一下思路和具體實現。簡訊驗證平台使用雲片,簡訊驗證碼的產生使用thinkphp。思路1、使用者輸入手機號,請求擷取簡訊驗證碼。2、thinkphp產生簡訊驗證碼,儲存,同時和其他參數一起發送請求給雲片。3、雲片傳送簡訊驗證碼到指定手機號。4、使用者輸入簡訊驗證碼。5、thinkphp根據驗證碼是否正確、驗證碼是否到期兩個條件判斷是否驗證通過。代碼實現驗證介面介面地址:https://sms.yunpian.com/v1/sms/send.json。使用p
Time of Update: 2016-12-05
由于飛信目前沒有開發平台,現有API都是第三方開發,貌似是通過破解WAP飛信或者3G飛信,類比瀏覽器的行為來發簡訊。另外Google
Time of Update: 2016-12-01
PHP能開啟遠程或本地主機上的Socket連接埠。本文是一個使用Socket的小例子:串連到一個Usenet新聞群組伺服器,同伺服器對話,從新聞群組中下載一些文章。在php中開啟一個socket使用fsockopen()開啟一個socket.這個函數在php3和php4種都可以使用。函式宣告是這樣的:int fsockopen (string hostname, int port _[, int errno [, string errstr [, double timeout]]])
Time of Update: 2016-12-01
複製代碼 代碼如下:<?php /** ** 一數組的概述 1.數組的本質:管理和操作一組變數,成批處理 2.數組是複合類型 3.數組中可以儲存任意長度的資料。也可以儲存任意類型的資料 4.數組就可以完成其他語言資料結構的功能(鏈表,隊列,棧,集合類) ** 二.數組的分類 數組中存有多個單元,(單元稱為元素) 每個元素都是由下標【鍵】和值組成 單獨訪問元素的時候,都是通過下標【鍵】來訪問元素 1.一維數組 ,二維數組,三維數組 。。。。。多維陣列
Time of Update: 2016-12-01
資料庫中,存放文章的表中有“Tag”欄位,用來存放標籤。標籤之間用“,”分隔。比如“PHP,VB,隨筆”。 下面的實現代碼,將標籤從資料庫中搜出來,並格式化處理,使其以出現的次數為依據顯示出不同大小的文字串連。 其中的細節,不做解釋了! 觀念陳、方法笨、效率低的標籤雲的實現代碼如下: 複製代碼 代碼如下: /** * WNiaoBlog Tag Template ShowTag * * @package WNiaoBlog * * @subpackage Tag */ //Connect
Time of Update: 2016-12-01
我看過phpcms、discuz的源碼,所以可能就缺乏創新了,不過原理大都相通,只是細節處理可能稍微不同。 說正題,下面開始談談具體實現過程了。 1.首先要想好模板檔案放在哪?轉換後的php檔案放哪?還有怎麼命名?直接上源碼: 複製代碼 代碼如下: function template($tpl = 'index',$dir = 'hello') { if(!file_exists($pd =
Time of Update: 2016-12-01
php頁面緩衝主要用到的是ob系列函數,如ob_start(),ob_end_flush(),ob_get_contents() 下面是編碼部分。 1.初始化函數,一般是設定頁面緩衝路徑、快取檔案命名格式等,可按個人喜好自訂。這裡用到的識別ID是經加密的$_SERVER[REQUEST_URI]參數。這個函數中最後還有一個if判斷:若未過緩衝期,則載入快取檔案,否則載入源檔案。 複製代碼 代碼如下: function page_init() { $url = $_SERVER[
Time of Update: 2016-12-01
迭代器模式是一種行為型模式,它是一種最簡單也最常見的設計模式。它可以讓使用者透過特定的介面巡訪容器中的每一個元素而不用瞭解底層的實際操作。適用性在希望利用語言本身的遍曆函數便利自訂結構時,例如PHP中的foreach函數類圖PHP執行個體<?phpclass sample implements Iterator { private $_items ; public function __construct(&$data) { $this->_items =
Time of Update: 2016-12-01
例1 複製代碼 代碼如下: <?php Header("Content-type: image/png"); /*通知瀏覽器,要輸出映像*/ $im = imagecreate(400 , 300); /*定義映像的大小*/ $gray = ImageColorAllocate($im , 235 , 235 , 235); $pink = ImageColorAllocate($im, 255 , 128 , 255); $fontfile =
Time of Update: 2016-12-05
之前在一個叫魔法實驗室的部落格中看過一篇《php session原理徹底分析》的文章,作者從session的使用角度很好闡述了在代碼運行過程中,每個環節的變化以及相關參數的設定及作用。本來想把原文轉帖過來,但是原部落格被關閉了。不知是這次大範圍的重新備案,還是其他什麼原因所致。通過百度快照找到一些原文資料,沒找到的將按之前的理解重新整理,以使大家對session能有更多瞭解。楔子:Session大白話
Time of Update: 2016-12-01
複製代碼 代碼如下: class Timer { private $StartTime = 0;//程式運行開始時間 private $StopTime = 0;//程式運行結束時間 private $TimeSpent = 0;//程式運行花費時間 function start(){//程式運行開始 $this->StartTime = microtime(); } function stop(){//程式運行結束 $this->StopTime = microtime(); }