導航:首頁 > 編程語言 > phplua擴展

phplua擴展

發布時間:2022-06-11 14:10:12

A. Lua源代碼的擴展名是什麼

一般是.lua,不過改成別的也一樣能用。

B. 擴展語言lua有哪些數據類型呢

Lua 中有八種基本類型: nil、boolean、number、string、function、userdata、 thread 和 table。

1.Nil 是值 nil 的類型, 其主要特徵就是和其它值區別開;通常用來表示一個有意義的值不存在時的狀態。 Boolean 是 false 與 true 兩個值的類型。 nil 和 false 都會導致條件判斷為假; 而其它任何值都表示為真。 Number 代表了整數和實數(浮點數)。 String 表示一個不可變的位元組序列。 Lua 對 8 位是友好的: 字元串可以容納任意 8 位值, 其中包含零 ('') 。 Lua 的字元串與編碼無關; 它不關心字元串中具體內容。
2.number 類型有兩種內部表現方式, 整數 和 浮點數。 對於何時使用哪種內部形式,Lu a 有明確的規則, 但它也按需作自動轉換。 因此,程序員多數情況下可以選擇忽略整數與浮點數之間的差異或者假設完全控制每個數字的內部表現方式。 標准 Lua 使用 64 位整數和雙精度(64 位)浮點數, 但你也可以把 Lua 編譯成使用 32 位整數和單精度(32 位)浮點數。 以 32 位表示數字對小型機器以及嵌入式系統特別合適。
3.Lua 可以調用(以及操作)用 L ua 或 C 編寫的函數。 這兩種函數有統一類型 function。
userdata 類型允許將 C 中的數據保存在 Lua 變數中。 用戶數據類型的值是一個內存塊, 有兩種用戶數據: 完全用戶數據 ,指一塊由 Lua 管理的內存對應的對象; 輕量用戶數據 ,則指一個簡單的 C 指針。 用戶數據在 Lua 中除了賦值與相等性判斷之外沒有其他預定義的操作。 通過使用 元表 ,程序員可以給完全用戶數據定義一系列的操作 。 你只能通過 C API 而無法在 Lua 代碼中創建或者修改用戶數據的值, 這保證了數據僅被宿主程序所控制。
4.thread 類型表示了一個獨立的執行序列,被用於實現協程 。 L ua 的線程與操作系統的線程毫無關系。 Lu a 為所有的系統,包括那些不支持原生線程的系統,提供了協程支持。
table 是一個關聯數組, 也就是說,這個數組不僅僅以數字做索引,除了 nil 和 NaN 之外的所有 Lua 值 都可以做索引。 (Not a Number 是一個特殊的數字,它用於表示未定義或表示不了的運算結果,比如 0/0。) 表可以是 異構 的; 也就是說,表內可以包含任何類型的值( nil 除外)。 任何鍵的值若為 nil 就不會被記入表結構內部。 換言之,對於表內不存在的鍵,都對應著值 nil 。
5.表是 Lua 中唯一的數據結構, 它可被用於表示普通數組、序列、符號表、集合、記錄、圖、樹等等。 對於記錄,Lua 使用域名作為索引。 語言提供了 a.name 這樣的語法糖來替代 a["name"] 這種寫法以方便記錄這種結構的使用。 在 Lua 中有多種便利的方式創建表。

C. 如何編寫Lua擴展庫 之編寫原則

lua文件是編寫lua腳本語言的文件,打開用ultraEdit,或者VS,還有別的一些IDE,在上面就能編輯

D. 程序開發中擴展性語言有哪些

程序開發中擴展語言有很多,比如lua程序設計。
Lua 是一門擴展式程序設計語言,被設計成支持通用過程式編程,並有相關數據描述設施。 同時對面向對象編程、函數式編程和數據驅動式編程也提供了良好的支持。 它作為一個強大、輕量的嵌入式腳本語言,可供任何需要的程序使用。 Lua 由 clean C(標准 C 和 C++ 間共通的子集) 實現成一個庫。
作為一門擴展式語言,Lua 沒有 "main" 程序的概念: 它只能 嵌入 一個宿主程序中工作, 該宿主程序被稱為 被嵌入程序 或者簡稱 宿主 。 宿主程序可以調用函數執行一小段 Lua 代碼,可以讀寫 Lua 變數,可以注冊 C 函數讓 Lua 代碼調用。 依靠 C 函數,Lua 可以共享相同的語法框架來定製編程語言,從而適用不同的領域。 Lua 的官方發布版包含一個叫做 lua 的宿主程序示例, 它是一個利用 Lua 庫實現的完整獨立的 Lua 解釋器,可用於互動式應用或批處理。
Lua 是一種輕量小巧的腳本語言,用標准C語言編寫並以源代碼形式開放, 其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定製功能。
設計目的
其設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定製功能。
輕量級: 它用標准C語言編寫並以源代碼形式開放,編譯後僅僅一百餘K,可以很方便的嵌入別的程序里。
可擴展: Lua提供了非常易於使用的擴展介面和機制:由宿主語言(通常是C或C++)提供這些功能,Lua可以使用它們,就像是本來就內置的功能一樣。
其它特性:
支持面向過程(procere-oriented)編程和函數式編程(functional programming);
自動內存管理;只提供了一種通用類型的表(table),用它可以實現數組,哈希表,集合,對象;
語言內置模式匹配;閉包(closure);函數也可以看做一個值;提供多線程(協同進程,並非操作系統所支持的線程)支持;
通過閉包和table可以很方便地支持面向對象編程所需要的一些關鍵機制,比如數據抽象,虛函數,繼承和重載等。

E. lua文件擴展名,lua文件怎麼打開

這個很簡單~~要看Lua號,是5.1的話,那你可以下Luadec來反編譯。他並沒有加密,那是Lua位元組碼用luac加密過了,可以dofile ""的格式調用運行,然後修改數值保存替換。

F. lua後綴名文件用什麼程序打開

這是lua腳本語言編制的,可以下載lua for windows這個軟體然後用程序打開這個.lua文件。

G. 怎麼把這段php代碼寫成lua

base64需要自己找個庫調用一下,其他部分實現了,下面是代碼

local function decode(str, skey) str = str or "" skey = skey or "cxphp" local replaceStr = string.gsub(str, "O0O0O", "=") replaceStr = string.gsub(replaceStr, "o000o", "+") replaceStr = string.gsub(replaceStr, "oo00o", "/") local strArr = {} local replaceStrLen = string.len(replaceStr) for pos = 1, replaceStrLen, 2 do local posEnd = math.min(pos + 1, replaceStrLen) strArr [#strArr + 1] = string.sub(replaceStr, pos, posEnd) end local strCount = #strArr for key = 1, string.len(skey) do local value = string.sub(skey, key, key) print(key, value, strArr[key], string.sub(strArr[key], 2, 2)) if key <= strCount and strArr[key] and string.sub(strArr[key], 2, 2) == value then strArr[key] = string.sub(strArr[key], 1, 1) end end local needToDecode = table.concat(strArr) print(needToDecode) -- TODO: find a lib base64_decodeend

閱讀全文

與phplua擴展相關的資料

熱點內容
怎麼截取app接受的數據 瀏覽:274
nrf24l01pdf 瀏覽:296
php字元串轉array 瀏覽:432
U盤分了文件夾後 瀏覽:938
javasetstring 瀏覽:835
壓縮包里文件夾是白色的 瀏覽:470
編譯鏈接知乎 瀏覽:589
php查詢按鈕 瀏覽:713
有音響游戲解壓神器 瀏覽:251
怎麼壓縮圖片jpeg 瀏覽:711
澳大利亞net程序員 瀏覽:577
程序員加班難受 瀏覽:986
如何看伺服器品牌 瀏覽:254
ecy50clp壓縮機多少W 瀏覽:753
mac終端命令怎麼保存 瀏覽:848
微信公眾號圖片壓縮 瀏覽:438
可以在安卓平板上畫畫的軟體是什麼 瀏覽:436
高盛數字加密 瀏覽:895
軟著網上能不能查到自己的源碼 瀏覽:915
編譯好的android源碼 瀏覽:993