问题标签 [runkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1933 浏览

php - PHP 启动:时区数据库已损坏

我刚刚更新了我的 CentOS 服务器。PHP现在是5.2.10版本(php-5.2.10-1.el5.remi.i386),我已经安装了PECL Runkit。tzdata 也已更新(tzdata-2009i-2.el5.noarch)。自更新以来,Apache 拒绝启动

这是httpd/error.log

[2009 年 7 月 8 日星期三 11:40:21] [通知] 启用了 suEXEC 机制(包装器:/usr/sbin/suexec)[2009 年 7 月 8 日星期三 11:40:24] [通知] 摘要:为摘要身份验证生成密钥.. . [Wed Jul 08 11:40:24 2009] [notice] 摘要:完成 PHP 严格标准:PHP 启动:依赖系统的时区设置是不安全的。请使用 date.timezone 设置、TZ 环境变量或 date_default_timezone_set() 函数。如果您使用了这些方法中的任何一种,但仍然收到此警告,您很可能拼错了时区标识符。我们在第 0 行的 Unknown 中为“CEST/2.0/DST”选择了“Europe/Berlin”

PHP 致命错误:PHP 启动:时区数据库已损坏 - 这绝不应该发生!在第 0 行的未知中

当我删除 runkit 时,一切运行良好。但我需要这个工具。

最好的问候,塞德里克

0 投票
2 回答
1686 浏览

php - Runkit:不适用于 linux 服务器

我对这个小例子的 PECL::Runkit 有疑问

a.php 和 b.php 每个都包含相同的代码

在我的电脑(Windows XP、Wampserver 2、php 5.2.9-2、与 Wamp 捆绑的 runkit DLL)上它可以工作并且 index.php 显示

在我的 Linux CentOS 5 服务器上,PHP 5.2.10,手动编译的 Runkit

一个问题:runkit 的 make test 给我 100% 的测试失败,但我仍然不知道为什么。来自 linux 发行版的 runkit 版本只会使 Apache 崩溃: PHP 启动:时区数据库已损坏

我放弃了xdebug,回到php 5.2.9,但是错误是一样的

在此先感谢,塞德里克

0 投票
1 回答
2576 浏览

php - 我在哪里可以获得 PHP 5.3+ 的 runkit DLL 扩展?

这是一个快速的问题:我在哪里可以获得 PHP 5.3+ 版本的 runkit 扩展?手册:

http://php.net/manual/en/book.runkit.php

我正在搜索 DLL 版本,因为我正在尝试在 Windows 上使用它。我搜索了 snaps.php.net,谷歌了它,但没有运气。

你能指出我正确的位置或上传到某个地方吗?

0 投票
2 回答
1314 浏览

php - PHP - runkit 重新定义方法

我所有的网站都有一个共同的启动器,它处理 url、文件位置等。有 3 种情况需要处理 - 是目录、文件存在和文件不存在。每个应用程序都有每个案例的唯一代码。我决定稍微修改一下runkit,我正在尝试统一代码。每个案例都将由一个函数处理,该函数可以通过 runkit 重新定义。

考虑这段代码:

这部分按预期工作。但是当我尝试更改代码以便重新定义的方法调用用户函数时,它可以工作。但是,看在上帝的份上,我不知道如何将$this传递给函数。

重新定义方法如下所示:

这不起作用,无论我尝试什么(call_user_func_array 也是如此)。我就是想不通。作为记录:

行得通。

任何帮助表示赞赏。

请注意,这只是一个实验,我想知道如何做到这一点:)

编辑:我得到:

0 投票
2 回答
1283 浏览

php - 有人可以为我编译 PHP runkit DLL 扩展吗?

我放弃。我前段时间问过这个问题,但我又回到了这个问题。我仍然遇到编译错误/丢失文件/其他我无法/没有时间修复的问题。不要误会我的意思——我已经编译了好几次,但是我没有工作过的 DLL 文件。我使用 WAMPServer 2.1e [Apache 2.2.17, PHP 5.3.5] - 启用 php_runkit 后它不会启动。即使已经从 Internet 编译的 DLL 也无法正常工作。还有一次 Windows 似乎对我不利。

现在,作为一名程序员,我真的很蹩脚地问你以下问题:有人可以为我编译 PHP runkit DLL 扩展或将我指向 WORKING 吗?请测试它是否有效并提供您的 WAMP 堆栈配置,以便我调整我的。

你会是我的英雄。

0 投票
2 回答
5003 浏览

php - PHP - 用于拦截方法调用的 runkit 替代方案

我有一些非常不利于测试的代码(至少可以这么说)需要测试。不幸的是,重构不是一种选择。我必须按原样测试代码,而不能更改它。

为此,我正在考虑拦截函数调用并动态更改它们的功能,以便我可以运行我的测试,因为我需要一些函数和方法来返回已知值,并且我需要其他发出请求、连接到数据库等的函数和方法,停止这样做并返回我需要他们返回的东西。有没有办法做到这一点runkit_method_redefine(),最好不是“实验”并且仍然保持?也许是runkit的替代品?也许更好的方法?

编辑:如果我需要该功能,将使用 PHPUnit 的测试替身和 PHP 5.3.2 的功能来使私有方法可访问。

0 投票
1 回答
269 浏览

php - 共享主机上的 PHP Runkit 支持

我正在尝试决定是否应该为我的脚本使用 runkit php 扩展。问题是这些脚本应该适用于大多数主机,包括共享主机。我找不到有关支持 runkit 扩展的主机数量的任何数字,即使我怀疑它不适用于大多数共享主机,我想确定。那么有人在(共享)主机上使用过 runkit 吗?

谢谢!

0 投票
0 回答
211 浏览

php - 在 runkit 沙盒会话中执行用户请求

我有一个用户上传 php 项目的环境,类似于共享主机的环境。

用户的代码与 Runkit 无关。他们的代码必须在我的 runkit 环境中执行。

是否可以为 lighttpd 提供一个请求处理程序,我可以在其中创建一个 runkit 沙箱并执行用户的请求。

0 投票
1 回答
131 浏览

php - 如何禁用 runkit?

我想暂时禁用 runkit(或暂时禁用 PECL 扩展)。有人知道该怎么做吗?

0 投票
1 回答
880 浏览

php - 如何重命名或覆盖php函数?

我如何使用runkit重新定义php中的函数?

我在 php.ini 中设置

当我运行时,它显示:

我该如何解决?请帮我!