首頁 php教程 php手册 专为新手写的结合smarty的类第1/3页

专为新手写的结合smarty的类第1/3页

Jun 13, 2016 pm 12:36 PM
smarty 新手 類別 結合 邀請

专为新手写的结合smarty的类,诚挚邀请大家多提宝贵意见


这个是为新手(也为自己)写的结合smarty一起使用的类,是未完成的,现在放出来的目的不是马上让新手使用,所以也没有把注解写的非常详细
希望各位高手多多提意见,我尽量完善它。
    首先声明,我写这个的目的也是为了锻炼自己,尽管我知道现在已经有很多类似的类了,但是我还是决定来写一个,
所以请大家在浏览的时候口下留情。

还有文件我也已经打包上传了,放在下面,请大家多多下载,多多提意见。有什么问题直接Q我

目前该类包括以下功能(使用范例,设$m = new Machine_m())
[数据库]
目前支持MYSQL与ACCESS两种数据库
配置参考config.php文件
使用:$m->send_query(SQL语句)//
$m->select_query(SQL语句,是否返回资源,默认为false即返回一个二维数组)

[错误处理]
分为系统错误和用户错误
系统错误:
$this->sys_err( '配置错误,请检查config配置文件', 'die');
第一个参数将记录错误信息到/lib/error/system.err中,第二个参数是处理方法(keep or die),如果需要修改浏览器端提示的话,还可以设置第三个参数,它默认为“很抱歉,本站发生系统错误,请稍候再试。”
用户错误:
$m->user_err( '注册系统关闭', 'die', $_SERVER['HTTP_REFERER'] );
第一个参数是显示到浏览器端的提示,第二个参数是处理方法(keep or die),第三个参数是跳转页面,如果需要记录错误信息的话,还可以设置第四个参数,它将记录错误信息
到/lib/error/user.err中,不设默认不保存。

浏览器端的错误提示默认调用/lib/error/下的err_page.htm模版文件,也可以设置自己的错误模版文件,然后用$m->err_page=加载。

[静态生成]
只用短短一行就自动生成静态页面,跳转时可设置静态页面过期时间
(现在还是不完全的静态,完全的比较复杂,目前没有整合,大家如果要实现完全静态的话,可以结合我的create_html函数和文本操作系列函数实现)
使用方法:
$m->create_html(模版文件,静态输出路径,输出的文件名);
跳转:
$m->goto_html();
输出文件名默认等于当前php文件的文件名,提供这个参数目的是,当有需要使用静态分页时,可以用这个参数设置

[二维数组排序 (推荐)]
可以让二维数组作类似:“先按字段a升序,再按字段b降序”这样的排序
使用方法:
设有这样一个数组:$x = array( array('name'=>'machine_马', 'age'=>23),array('name'=>'tom',age=>28),…… )
我们现在要把此此数组先按name升序排,再按age降序排
则用法为m_sort($x,'name',SORT_ASC,'age',SORT_DESC)

[动态加载]
对于不常用的功能,我采用加载的方法来使用,个人认为这样可以节约资源
例如,如果我们要使用m_sort函数时,默认是没有加载这个函数的
需要这样加载:$m->load_func('m_sort')
然后就可以使用m_sort函数了

[分页]
这里我也不知道做得好不好,我是先写了一个类,再写一个函数来调它,目的是使用得时候比较方便
使用方法:m_page(数据条数,当前页号,每页多少行,显示多少个跳转链接)
函数返回一个数组:array(
  'rows' => 每页显示多少行,
  'prve' => 上一大页页号,//所谓大页,就是类似上7页,下7页这样的跳转
  'next' => 下一大页页号,
  'pages' => 共有多少页,
  'start' => SQL查询的开始记录数,
  'count' => 共有多少条记录,
  'links' => 链接页号,//如果共有13页,链接数是7个,当前又在第二大页,则输出array(8,9,10,11,12,13)
  'current_page' => 当前页号
  );

[验证表单]
把需要验证的表单事先写进函数类,判别的时候只需要把$_POST传入就可以了
使用方法:这个大家自己看函数就应该看得明白,这个函数需要大家按照自己的需求来修改的

[防止跨站攻击]
把这个功能也写道一个函数内了

[中文截取函数]
不是我写的,拿来修改了一下而已

[上传文件]
m_up_file($_FILES,上传路径,文件类型,大小限制)
其中上传路径可以这样设置,1:直接写文件夹路径,2:array('gif'=>'file/gif','jpg'=>'file=>jpg'),这样gif文件自动放入file/gif文件夹,jpg文件放入file/jpg文件夹
文件类型:写法1:'jpg',写法2:array('jpg','jpeg','gif')
返回array( 'arr' => 已上传的文件数组, 'err_msg' => 上传过程中的错误信息, 'num' => 上传成功数 )

[文本操作 (推荐)]
假设有这样一个字符串 $str="你好phpchina";
我们可以这样修改 $new_str=m_txt_replace('content','machine_马',$str);
现在$new_str的值为"你好machine_马"
其他的几个函数,如:m_txt_add,m_txt_delete,m_txt_get都是类似的,大家可以自行参看。

注意:这个就是生成静态页面之后,修改的方法。
可以参见6to23并思考为什么他一篇帖子放了那么多回帖速度还那么快
答:因为它的回帖没有进数据库而是直接写到静态文件里面,再使用类似我上面的方法来修改的。你可以看他的源代码,找找

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱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

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

熱工具

記事本++7.3.1

記事本++7.3.1

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

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

玩霧鎖王國的秘籍給新手指引 玩霧鎖王國的秘籍給新手指引 Jan 28, 2024 pm 03:33 PM

霧鎖王國是一款開放世界的遊戲,玩家可以扮演火焰之子進行生存和探索。遊戲融合了動作RPG挑戰的特色娛樂,為玩家帶來無盡的驚喜和歡樂。在遊戲中,玩家可以探索資源、環境和武器等內容。對於一些新手玩家,可能會對如何上手遊戲感到好奇。在這期的介紹和分享中,我們將為大家提供一些相關的入門指南。霧鎖王國新手入門技巧被瘴氣籠罩區域的危險等級不同在探索的過程中會逐漸解鎖地圖的新區域,並且能看到被瘴氣籠罩區域的位置。地圖上會以兩種顏色來區分,藍色區域是可以短暫進入的,根據角色能力等級高低,可停留的時間也會有所區別

如何在技嘉主機板上設定鍵盤啟動功能 (技嘉主機板啟用鍵盤開機方式) 如何在技嘉主機板上設定鍵盤啟動功能 (技嘉主機板啟用鍵盤開機方式) Dec 31, 2023 pm 05:15 PM

技嘉的主機板怎麼設定鍵盤開機首先,要支援鍵盤開機,一定是PS2鍵盤! !設定步驟如下:第一步:開機按Del或F2進入bios,到bios的Advanced(進階)模式普通主機板預設進入主機板的EZ(簡易)模式,需要按F7切換到進階模式,ROG系列主機板預設進入bios的進階模式(我們用簡體中文來示範)第二步:選擇到-【進階】-【進階電源管理(APM)】第三步:找到選項【由PS2鍵盤喚醒】第四步:這個選項預設是Disabled(關閉)的,下拉之後可以看到三種不同的設定選擇,分別是按【空白鍵】開機、按組

CS玩家的首選:建議的電腦配置 CS玩家的首選:建議的電腦配置 Jan 02, 2024 pm 04:26 PM

1.處理器在選擇電腦配置時,處理器是至關重要的組件之一。對於玩CS這樣的遊戲來說,處理器的效能直接影響遊戲的流暢度和反應速度。建議選擇IntelCorei5或i7系列的處理器,因為它們具有強大的多核心處理能力和高頻率,可以輕鬆應對CS的高要求。 2.顯示卡顯示卡是遊戲表現的重要因素之一。對於射擊遊戲如CS而言,顯示卡的表現直接影響遊戲畫面的清晰度和流暢度。建議選擇NVIDIAGeForceGTX系列或AMDRadeonRX系列的顯示卡,它們具備出色的圖形處理能力和高幀率輸出,能夠提供更好的遊戲體驗3.內存電

錨點降臨新手十連角色推薦 錨點降臨新手十連角色推薦 Feb 20, 2024 pm 02:30 PM

錨點降臨是一款擁有高畫質美少女二次元主題的3D回合卡牌遊戲,提供了豐富角色的精彩組合可供玩家來探索和體驗,擁有許多精品陣容的強力搭配,新人玩家也是好奇新手池有哪些強力角色推薦,以下來看看新手十連金的選擇參考!錨點降臨新手池強力角色推薦第一個十連選艾莉絲,她主要是一個單體雷系爆發角色,單體輸出非常爆炸的,對新人的體驗也會是非常的友善的,所以十分推薦選取。 10抽必金建議選擇「艾莉絲」+「羚角」的組合,艾莉絲是最值得選的金皮雷屬性輸出角色,比新手卡池中的另外2個角色要強得不是一星半點。艾莉絲可以透過特

主機板上的數位音訊輸出介面-SPDIF OUT 主機板上的數位音訊輸出介面-SPDIF OUT Jan 14, 2024 pm 04:42 PM

主機板上SPDIFOUT連接線序最近我遇到了一個問題,就是關於電線的接線順序。我上網查了一下,有些資料說1、2、4對應的是out、+5V、接地;而有些資料則說1、2、4對應的是out、接地、+5V。最好的方法是查看你的主機板說明書,如果找不到說明書,你可以使用萬用電表進行測量。首先找到接地,然後就可以確定其他的接線順序了。主機板vdg怎麼接線連接主機板的VDG接線時,您需要將VGA連接線的一端插入顯示器的VGA接口,另一端插入電腦的顯示卡VGA接口。請注意,不要將其插入主機板的VGA介面。完成連接後,您可以

學會利用批次縮排是PyCharm新手必須掌握的技能 學會利用批次縮排是PyCharm新手必須掌握的技能 Dec 30, 2023 pm 12:58 PM

PyCharm新手必備技能:掌握批次縮排的使用方法,需要具體程式碼範例概述:PyCharm是一款功能強大的Python整合開發環境(IDE),它提供了許多實用的工具和功能,幫助開發者提高效率。在日常的編碼過程中,我們經常需要將程式碼進行縮進,保持程式碼的格式整齊美觀。而PyCharm提供的批次縮排功能可以幫助我們快速地將程式碼進行批次縮排,提高編碼效率。本文將探討Py

廣聯達軟體電腦設定推薦;廣聯達軟體對電腦的設定需求 廣聯達軟體電腦設定推薦;廣聯達軟體對電腦的設定需求 Jan 01, 2024 pm 12:52 PM

廣聯達軟體是一家專注於建築資訊化領域的軟體公司,其產品被廣泛應用於建築設計、施工、營運等各個環節。由於廣聯達軟體功能複雜、資料量大,對電腦的配置要求較高。本文將從多個方面詳細說明廣聯達軟體的電腦配置推薦,以幫助讀者選擇適合的電腦配置處理器廣聯達軟體在進行建築設計、模擬等操作時,需要進行大量的數據計算和處理,因此對處理器的要求較高。建議選擇多核心、高主頻的處理器,如英特爾i7系列或AMDRyzen系列。這些處理器具有較強的運算能力和多執行緒處理能力,能夠更好地滿足廣聯達軟體的需求。記憶體記憶體是影響計算

上古王冠新手攻略玩法介紹 上古王冠新手攻略玩法介紹 Feb 20, 2024 am 11:20 AM

上古王冠是以西方魔幻冒險為背景,高品質有策略的卡牌手遊。遊戲內祕境探險、遺跡大冒險、全民冠軍賽等特色玩法等你來體驗。那麼對於新手玩家來說,想要快速上手這個遊戲當然少不了新手攻略了,今天小編就給大家帶來其相關的攻略,一起看看吧。上古王冠新手攻略玩法一覽一、開區流派:1.攢鑽孔:一切以攢鑽為主,出村後再發力。除了主要的神兵、三個飛輪活動等需要花鑽,其他一概不管,主打一個擺爛,英雄挑戰不必理會,能打多少就多少,不強求。優點:只要擺爛攢鑽,出村後能有鑽石快速接入最新活動,拿新系列五金英雄,鑽石斷檔概

See all articles