CrossPHP框架的常用操作

1.?在視圖控制器中使用$this->res()方法來生成資源文件的絕對路徑
$this->res('css/style.css');

生成的連接為http://youdomain.com/static/css/style.css


2. 生成指定app名稱的連接

$this->appUrl()?第一個參數為基礎url, 第二個參數為app名稱, 第三個參數為 控制器:方法 第四個參數為參數列表, 第五個參數標識是否生成加密連接


3. 在布局文件中調用視圖控制器的方法

直接在布局文件中使用$this->action()就可以調用視圖控制器中的方法, 如下例

<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="renderer" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="Keywords" content="<?php echo isset($keywords) ? $keywords : "默認關鍵詞"); ?>"/><meta name="Description" content="<?php echo isset($description) ? $description : '默認描述'; ?>"/><meta name="viewport" content="width=device-width, initial-scale=1"><title><?php echo isset($title)?$title:'默認標題' ?></title><?php $this->loadRes() ?>
</head>
<body><?php echo isset($content)?$content:'' ?>
</body>
</html>

4. 在模板中生成鏈接

在模板中調用url方法, 可以自動生成連接, 如果方法有別名, 會優先使用別名

$this->url('controller:action', array('key'=>'value'));


5. 在控制器中跳轉到其他控制器

$this->to([controller:action, params, sec])

跳轉到指定頁面,該方法實際是一個$this->view->link()的連接, 生成url后用header函數跳轉.

6. 在控制器中調用視圖
$this->display([data, method, http_response_status])

調用視圖控制,一個$this->view->display()的連接。

7. 在控制器中接收參數


假設當前的url為
http://domain/skeleton/htdocs/web/controller/action/p1/1/p2/2

在方法內部使用控制器的?$this->params?屬性可以獲得參數的值:

namespace app\web\controllers;use Cross\MVC\Controller;class User extends Controller
{function index(){print_r($this->params);}
}

打印結果為一個關聯索引數組 此時?skeleton/app/web/init.php?中的值為url['type'] = 3

Array ( 'p1' => 1 'p2' => 2 )

打印結果根據app配置文件中url項的設置, 可能會有差異

8. 在控制器中使用modules


在控制器中使用modules,以使用UserModules為例:
namespace app\web\controllers;use Cross\MVC\Controller;class User extends Controller
{function index(){$USER = new UserModules();}
}

如果類中每個action都依賴UserModules, 可以把初始化UserModules的工作放到構造函數中:

namespace app\web\controllers;use Cross\MVC\Controller;class User extends Controller
{/*** @var UserModule*/protected $USER;function __construct(){parent::__construct();$this->USER = new UserModule();}function index(){}
}

然后就可以在控制器中調用modules提供的方法了.


9. 在視圖模板中訪問指定路由

?

等效于 : http://up.kuman.com/api/getWithdrawInfo(將網址寫成固定,但是這種方式有一個缺點,一般線上和本地調試不會用同一個域名,如果直接寫成固定,到時上線后,還需要逐個更改我們定義的路由)

所以,在crossPHP中,還是推薦這種方式進行路由的指定


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/282485.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282485.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282485.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

WPF-07 Style之觸發器

觸發器能夠在改變屬性值的時候&#xff0c;根據值變化執行操作&#xff0c;在不需要創建一個新的控件的情況下&#xff0c;可以動態的改變控件的外觀&#xff0c;當條件滿足時&#xff0c;觸發器可以改變任何屬性的值&#xff0c;觸發器通常定義在Style中&#xff0c;在窗體的根…

jdk自帶常用命令行工具使用

轉自&#xff1a;http://blog.csdn.net/winwill2012/article/details/46364923jps命令使用jps命令類似于Linux下的ps命令&#xff0c;用于列出當前正在運行的所有Java進程。基本用法直接運行不加任何參數就能列出所有java進程的pid和類的短名稱。例如&#xff1a;常用參數-q參數…

crossphp框架中,在模板中加載其他模板

這里說我自己做的項目的應用場景 要求是用layui框架的layer組件,實現彈出層效果,用原聲PHP無疑很容易做到,但是如果應用到crossphp框架流程就會非常麻煩 這里簡單講一下大致的步驟: 1. 在一個模板文件中應用layui的layer組件實現彈出框 index.tpl.php2. 從我們自己定義的路徑上…

for(auto c:s)與for(auto c:s)

在c11標準下可以執行的特殊格式的for循環語句&#xff0c;區別在于引用類型可以改變原來的值 #include<iostream> using namespace std; int main() {string s("hello world");for(auto c:s)ct;cout<<s<<endl;//結果為hello worldfor(auto &c:…

MASA Framework的MinimalAPIs應用

在以前的MVC引用程序中&#xff0c;控制器是一個功能齊全的框架&#xff0c;但它偏重&#xff0c;因此在.Net6.0官方引入了MinimalAPIs&#xff0c;即最小API&#xff0c;與MVC相比&#xff0c;它足夠的簡潔&#xff0c;適合小型服務來使用&#xff0c;下面就讓我們看看如何使用…

【轉】Java開發必須要知道的知識體系

Java Java是一門超高人氣編程語言&#xff0c;擁有跨平臺、面向對象、泛型編程等特性。在TIOBE編程語言排行榜中&#xff0c;連續奪得第一寶座&#xff0c;而且國內各大知名互聯網公司&#xff0c;后端開發首選語言&#xff1a;非Java莫屬。今天只是梳理下Java知識體系&#xf…

CrossPHP--在我們用ajax,js取不到指定數據時,我們可以換一種方式

項目中遇到的問題: 需求: 用的是layui的laypage組件,進行分頁操作,熟悉layui的朋友都知道,laypage需要從服務端給其一個總條數, 但是在進行ajax請求時出了問題, 我是這樣定義的但是調用的時候卻無法將數值直接返回回去,所以這里只能更換一種思路 在控制器中進行數據的查詢,然后…

VS 代碼行數統計

按CTRLSHIFTF (Find in files)&#xff0c;勾上支持正則表達式&#xff0c;然后輸入搜索內容&#xff1a; ^:b*[^:b#/].*$#開頭和/開頭或者空行都不計入代碼量。如果需要只統計代碼文件的代轉載于:https://www.cnblogs.com/sunlyk/p/7484728.html

MySQL設置從庫只讀模式

常見現象 運維工作中會經常維護MySQL主從服務器&#xff0c;當然Slave我們只是用于讀操作。 一般權限開通也只授權只讀賬號&#xff0c;但是有時候維護工作可能不是一個人在做&#xff0c;你不能保證其他同事都按照這個標準操作。 有同事可能會授權Slave庫MySQL賬號為all或者se…

尋找kernel32.dll的地址

為了尋找kernel32.dll的地址&#xff0c;可以直接輸出&#xff0c;也可以通過TEB,PEB等查找。 尋找TEB: dt _TEB nt!_TEB 0x000 NtTib : _NT_TIB 0x01c EnvironmentPointer : Ptr32 Void 0x020 ClientId : _CLIENT_ID 0x028 ActiveRpcHandle : Ptr32 Void 0x02c ThreadLocalSto…

layui彈出層使用(layer.alert / layer.open / layer.prompt )

一 layer.alert 效果圖: 代碼: //取消提現 function back(id) {layer.alert(真的要取消嗎, {skin: layui-layer-molv //樣式類名 自定義樣式,closeBtn: 1 // 是否顯示關閉按鈕,anim: 1 //動畫類型,btn: [確定,取消] //按鈕,icon: 6 // icon,yes:function(){return $.aj…

SkiaSharp 自繪彈幕效果

SkiaSharp 自繪彈幕效果控件名&#xff1a;SkiaSharpBarrage作者&#xff1a; 驚鏵原文鏈接&#xff1a; https://github.com/yanjinhuagood/SkiaSharpBarrage框架使用.NET60&#xff1b;Visual Studio 2022;項目使用 MIT 開源許可協議&#xff1b;接著上一篇 WPF 彈幕上期有…

JavaScript中this指向

一.重點來了&#xff0c;this指向問題&#xff1a;1.this指向之普通函數。 2.this指向之對象 3.this指向之構造函數 4.this指向之&#xff08;call,apply&#xff09;動態更改this指向。 二.具體分析如下 1.普通函數 // 第23行的調用者為null,this指向也為null,// 所以這時js把…

【python】python中的定義類屬性和對像屬性

python中變量是沒有類型的可以綁定任意類型&#xff0c;但是在語法上不能聲明變量。 那我們怎麼來聲名一個變量呢&#xff1f; fNone 這樣我們給著個變量綁定了以各None類型&#xff0c;我們隨時可用重新綁定其它類型。這樣我們起到了預先聲名變量的效果。 類中如何去定義類的…

提交Form表單,submit之前做js判斷處理

效果:在點擊提交按鈕時,首先進行js判斷, 如果不符合條件,則alert出提示信息,并return false. 主要點就在于給form表單添加一個onsubmit事件. 在onsubmit事件中定義的函數里進行js驗證處理.代碼 : <!DOCTYPE html> <html lang"en"> <head><meta …

如何在Windows上一鍵部署PaddleOCR的WebAPI服務

PaddleOCR旨在打造一套豐富、領先、且實用的OCR工具庫&#xff0c;助力開發者訓練出更好的模型&#xff0c;并應用落地。官方開源項目地址&#xff1a;https://github.com/PaddlePaddle/PaddleOCR一定會有小伙伴們看完不知道如何部署與應用&#xff0c;怎么才能融入到自己的產品…

微軟為 Visual Studio 擴展添加對 Arm64 的支持

微軟在 6 月份推出了支持 Arm64 架構的 Visual Studio&#xff0c;這是第一個原生支持在基于 Arm 的處理器上構建和調試 Arm64 應用程序的 Visual Studio 版本。近日&#xff0c;他們宣布為 Visual Studio 擴展也添加了對 Arm64 的支持&#xff0c;因此開發者可在 Arm64 Visual…

WIN10 查看已經連接的wifi的密碼

命令行: 1. 顯示以前連接過的wifi2. 將wifi配置存入文件中3. 查看剛剛保存的wifi配置的文件這樣,我們就可以看到連接的wifi名稱和wifi密碼了.

ubantu 重啟mysql

如何啟動/停止/重啟MySQL一、 啟動方式1、使用 service 啟動&#xff1a;service mysql start2、使用 mysqld 腳本啟動&#xff1a;/etc/inint.d/mysql start3、使用 safe_mysqld 啟動&#xff1a;safe_mysql&二、停止1、使用 service 啟動&#xff1a;service mysql stop2…

C++ 反射機制的簡單實現

C并不支持反射機制&#xff0c;只能自己實現。 如果需要實現字字符串到函數到映射&#xff0c;一定要使用到函數指針。 簡單實現反射機制&#xff0c;根據字符串來構造相應到類。主要有以下幾點&#xff1a; (1) 可以使用map保存字符從到函數指針到映射。 (2) 工廠類提供字符串…