搜尋
首頁後端開發php教程PHP微信公众开发笔记(八)_PHP教程

PHP微信公众开发笔记(八)

PHP微信公众开发笔记系列
日期:2014.9.6

今天主要要做:建立关键词数据库、超时机制、优化的关键词匹配、表情信息数据库

要注意的:PHP echo之后并没有返回?还会继续执行??

2014.9.11整理笔记:
写这个笔记的时候,在赶功能,所以也就是简单的记几笔当时的工作内容,现在功能开发得差不多了,就来整理之前的笔记。当时就很简单的记录了上文的那几句。

这天是周六,不加班了在租的房子里歇着。因为要过中秋了,在深圳的姐这天会过来我这边过节,所以这天也没多少时间来写功能。早上早起去跑步,然后回来就开始折腾了(现在想想,没准以后自己真会成为一个工作狂了)。这天做的功能是在数据库中建立一个关键词数据表、表情信息数据表、加入了超时机制和优化了关键词匹配。

一、关键词数据表
这个数据表存储的信息主要是我之前做关键词过滤、捕获时用到的一些关键词。因为想方便管理,所以想一想将这些放到数据库中去,然后写一个函数调取这些信息,再去做匹配,这样我就不需要将所有的信息都写死在代码中,会更灵活点。有了这个想法之后,便开始整理这个数据表了。
关于数据库的操作没什么特意要提的,这里主要是记录下代码中的操作吧:
1、首先是获得所有的关键词:
这个很简单,就是将数据库中关键词数据表的整个数据都弄出来:
select * from xxx 选取数据表xxx的信息;

然后将得到的信息存储至一个二维数组中:

vcHLy/nT0LXEudi8/LTK0MXPosHLoaM8YnI+CjKhorXDtb3By7nYvPy0ysr9vt2x7bXE0MXPotauuvOjrL7NysfX9rnYvPy0yrXExqXF5MHLo7o8YnI+CjxwPsrXz8jO0tDo0qq1w7W9xqXF5LW9tcTV4tK70NDK/b7d0MXPoqOsyLu689TZ1/bPwtK7sr21xLmk1/eho9LyzqrV4sDvtcS52Lz8tMrKx72r1u7I57XY1rehorXnu7ChosDPvNLWrsDgtcS05tTayv2+3b/io6y2+NPDu6e3osvNuf3AtLXEv8nE3MrHWFi157uwoaJYWMDPvNKjrMv50tTU2tXiwO/F0LbPsrvKx9aux7DTw7XExMe49mluX2FycmF5LLb4ysfKudPDtcRzdHJzdHIoKbqvyv3AtNf2xdC2z7XEo7o8L3A+CjxwPjxpbWcgc3JjPQ=="http://www.2cto.com/uploadfile/Collfiles/20140912/2014091209032020.png" alt="\">


具体代码如上图所示,这样我就得到了这个关键词在数据表中的数据行了,然后我根据其类型再做下一步工作(数据表中包含关键词、关键词类型这两个字段,有这两个信息我就可以根据关键词类型做相应的操作了):

\


后续的操作就是直接使用的之前的代码,我这里只是理了一下结构而已。提到的优化了关键词

二、表情数据库
回复信息是可以回复表情的,在这里我不是用的emoji表情,而是最普通的那种,比如说"微笑" 就用"/::)"这个来表示,我建立的表情数据表也就是以微笑作为关键词,以"/::)"为值,然后加上一个表情类型,总共这三个字段。使用的时候,使用直接输入微笑,然后得到其值再回复,就可以使用了。也只是涉及到数据库的操作,在这里就不多啰嗦了。

三、超时机制
因为公众号使用了$_SESSION来存储如验证用户身份等信息,还有选择的菜单类型。就感觉有必要定期清理这些,比如说用户选择了菜单,然后长时间没有用了,那么就最好是下一次再使用的时候没有在菜单里了,而应该是退出了。有这样一个考虑,我就在网上查阅了相关了资料:要么就是定期全部清理所有的$_SESSION,要么就是定期清除单个$_SESSION。要做到定期,那么就需要知道时间,结合我之前做手游项目时用到的东西,想做定期无非也就是记住开启的时间,然后在每次使用的时候做判断就可以了。

在实现上,首先我是记录存储某个$_SESSION的时间,比如说验证用户身份的时间:

\


上图出现的psa_time()也只是对系统提供的time()函数的一个包装而已。这样我就获得了验证身份的时间,然后我在每次用户操作的时候获得当前时间,用来跟记录的这个时间做对比:



这样就实现了我所谓的超时机制了。


PHP学习记录:
在echo 之后,函数还是会执行下去嘛?之前,我回复信息并不是统一控制,可能某些模块我会直接回复了。但是我发现,即使我用echo回复了消息了,还是会执行echo之后的代码段,这不知道是啥情况。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/879185.htmlTechArticlePHP微信公众开发笔记(八) PHP微信公众开发笔记系列 日期:2014.9.6 今天主要要做:建立关键词数据库、超时机制、优化的关键词匹配、表情信...
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
哪些常見問題會導致PHP會話失敗?哪些常見問題會導致PHP會話失敗?Apr 25, 2025 am 12:16 AM

PHPSession失效的原因包括配置錯誤、Cookie問題和Session過期。 1.配置錯誤:檢查並設置正確的session.save_path。 2.Cookie問題:確保Cookie設置正確。 3.Session過期:調整session.gc_maxlifetime值以延長會話時間。

您如何在PHP中調試與會話相關的問題?您如何在PHP中調試與會話相關的問題?Apr 25, 2025 am 12:12 AM

在PHP中調試會話問題的方法包括:1.檢查會話是否正確啟動;2.驗證會話ID的傳遞;3.檢查會話數據的存儲和讀取;4.查看服務器配置。通過輸出會話ID和數據、查看會話文件內容等方法,可以有效診斷和解決會話相關的問題。

如果session_start()被多次調用會發生什麼?如果session_start()被多次調用會發生什麼?Apr 25, 2025 am 12:06 AM

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

您如何在PHP中配置會話壽命?您如何在PHP中配置會話壽命?Apr 25, 2025 am 12:05 AM

在PHP中配置會話生命週期可以通過設置session.gc_maxlifetime和session.cookie_lifetime來實現。 1)session.gc_maxlifetime控制服務器端會話數據的存活時間,2)session.cookie_lifetime控制客戶端cookie的生命週期,設置為0時cookie在瀏覽器關閉時過期。

使用數據庫存儲會話的優點是什麼?使用數據庫存儲會話的優點是什麼?Apr 24, 2025 am 12:16 AM

使用數據庫存儲會話的主要優勢包括持久性、可擴展性和安全性。 1.持久性:即使服務器重啟,會話數據也能保持不變。 2.可擴展性:適用於分佈式系統,確保會話數據在多服務器間同步。 3.安全性:數據庫提供加密存儲,保護敏感信息。

您如何在PHP中實現自定義會話處理?您如何在PHP中實現自定義會話處理?Apr 24, 2025 am 12:16 AM

在PHP中實現自定義會話處理可以通過實現SessionHandlerInterface接口來完成。具體步驟包括:1)創建實現SessionHandlerInterface的類,如CustomSessionHandler;2)重寫接口中的方法(如open,close,read,write,destroy,gc)來定義會話數據的生命週期和存儲方式;3)在PHP腳本中註冊自定義會話處理器並啟動會話。這樣可以將數據存儲在MySQL、Redis等介質中,提升性能、安全性和可擴展性。

什麼是會話ID?什麼是會話ID?Apr 24, 2025 am 12:13 AM

SessionID是網絡應用程序中用來跟踪用戶會話狀態的機制。 1.它是一個隨機生成的字符串,用於在用戶與服務器之間的多次交互中保持用戶的身份信息。 2.服務器生成並通過cookie或URL參數發送給客戶端,幫助在用戶的多次請求中識別和關聯這些請求。 3.生成通常使用隨機算法保證唯一性和不可預測性。 4.在實際開發中,可以使用內存數據庫如Redis來存儲session數據,提升性能和安全性。

您如何在無狀態環境(例如API)中處理會議?您如何在無狀態環境(例如API)中處理會議?Apr 24, 2025 am 12:12 AM

在無狀態環境如API中管理會話可以通過使用JWT或cookies來實現。 1.JWT適合無狀態和可擴展性,但大數據時體積大。 2.Cookies更傳統且易實現,但需謹慎配置以確保安全性。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具