PHP.mk документација

Разлики од стандардната Lua

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

reference.luasandbox.differences.php PHP.net прокси Преводот е вчитан
Оригинал на PHP.net
Патека reference.luasandbox.differences.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + преведен приказ Кодовите, табелите и белешките остануваат читливи во истиот тек.
Разлики од стандардната Lua

Референца за `reference.luasandbox.differences.php` со подобрена типографија и навигација.

reference.luasandbox.differences.php

Разлики од стандардната Lua

LuaSandbox обезбедува изолирана средина која се разликува на некои начини од стандардната Lua 5.1.

Функции кои не се достапни

  • dofile(), loadfile()Функциите io пакет, бидејќи тие дозволуваат директен пристап до датотечниот систем. Доколку е потребно, пристапот до датотечниот систем треба да се врши преку PHP повици.
  • На package пакет, вклучувајќи require() and module(), бидејќи силно зависи од директен пристап до датотечниот систем. Наместо тоа, може да се користи преработка во чиста Lua, како што се користи во екстензијата Scribunto на MediaWiki.
  • load() and loadstring(), за да се овозможи статичка анализа на Lua кодот.
  • print(), бидејќи излезот оди на стандарден излез. Доколку е потребно, излезот треба да се врши преку PHP повици.
  • Повеќето од os пакет, бидејќи дозволува манипулација на процесот и извршување на други процеси.
    • os.clock(), os.date(), os.difftime()Препорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци во os.time() остануваат достапни.
  • Повеќето од debug пакет, бидејќи дозволува манипулација на состојбата и метаподатоците на Lua на начини што можат да ја нарушат изолацијата.
    • debug.traceback() останува достапен.
  • string.dump(), бидејќи може да открие внатрешни податоци.
  • collectgarbage(), gcinfo()Функциите coroutine пакет не се прегледани за безбедност.

Функции кои се изменети

  • pcall() and xpcall() не може да фати одредени грешки, особено грешки при истекување на времето.
  • tostring() не вклучува адреси на покажувачи.
  • string.match() е закрпен за да се ограничи длабочината на рекурзијата и периодично да се проверува за истекување на времето.
  • math.random() and math.randomseed() се заменуваат со верзии кои не ја делат состојбата со PHP-овите rand().
  • Lua 5.2 __pairs and __ipairs метаметодите се поддржани од pairs() and ipairs().

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.