问题标签 [php-7]
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.
php-extension - 如何使用新的 Zend API 升级 PHP 函数参数?
我正在开发一个 php 扩展以将其升级到 PHP7,我的问题是关于INTERNAL_FUNCTION_PARAMETERS
. 在之前的版本中,它被定义为:
INTERNAL_FUNCTION_PARAMETERS int ht, zval *return_value, zval **return_value_ptr, zval *this_ptr, int return_value_used TSRMLS_DC
在新的zend引擎中,它被定义为:
INTERNAL_FUNCTION_PARAMETERS zend_execute_data *execute_data, zval *return_value
我有一个返回数组的php函数,它看起来像这样:`
我应该如何在没有 hanvig 的情况下获得类似的功能return_value_ptr
?我应该使用#define RETURN_ARR(r)
吗?,如果是这样,这对性能有何影响?
yum - centos7上php7安装错误
参考文档:https ://webtatic.com/packages/php70/
PHP 7.0.0 已于 2015 年 12 月 3 日在 PHP.net 上发布,并且还可以通过 Yum 在其测试存储库中的 Webtatic 上用于 CentOS/RHEL 6.7 和 7.1。
在 php7 安装过程中出现以下错误:
如何在centOS7上安装php7?
php - 将 PHP 7 与 WAMP 一起使用
我的操作系统是 Windows 10 Pro x64,我安装了VC14
x86 和 x64 软件包。
我添加了一个 php7.0.0 目录wamp/bin/php
,复制了文件php.ini
,phpForApache.ini
并wampserver.conf
修改了这些文件中的目录和 php 扩展名。
有我的wampserver.conf
:
WAMP 可以正确读取它,因为当我选择 php7.0.0 版本时,Apache httpd.conf 会得到这一行:
路径正确且 dll 文件存在,但 Apache 服务未启动,如果我检查 Apache 扩展,则 php7_module 指示为未找到(红色方块)。
如果我检查 apache 错误日志,唯一报告的是
[2015 年 12 月 8 日星期二 11:02:14.021018] [core:warn] [pid 5008:tid 516] AH00098: pid 文件 C:/wamp/bin/apache/apache2.4.9/logs/httpd.pid 被覆盖——不干净的关机以前的 Apache 运行?
在 WAMP 服务器中成功运行 PHP 7 的人是否知道解决此问题的方法?谢谢你。
php - PHP7 cli 与 php-fpm
我在 nginx 后面运行 php,带有 php-fpm 和 cron 任务到 php 二进制文件(/usr/bin/php)。
我发现了一个不一致的地方——当我通过 php 二进制文件和 fpm 运行相同的脚本时,它会输出不同的结果。
注意这仅适用于PHP7。在另一台服务器上,我用 5.6 对其进行了测试,结果是相同的。
这是我发现的。以下脚本:
保存到test.php
. 当我通过浏览器(php-fpm)运行它时,会产生:
但是当我从 CLI 执行它时,结果是不同的:
如果没有(对象)强制转换,它就不会发生。另外,如果我用它实例化$arr
它就new stdClass()
不会发生。
似乎$arr = (object)
php7 的引擎将其保存在内存中。
可能是配置问题。有人遇到过或可以解释一下吗?
谢谢。
php-7 - PHP 7:同时使用严格和非严格类型提示?
所以 PHP 7 现在有标量类型提示(w00t!),您可以根据 PHP 中的设置将类型提示设置为严格或非严格。Laracasts 使用定义 IIRC 来设置它。
有没有办法在一个文件(如数学库)中对标量进行严格的类型提示,同时在其他地方使用非严格的,而不只是随意更改代码中的设置?
我想通过不烦躁语言设置来避免引入错误,但我喜欢这个想法。
yaml - PHP7 中的 PECL yaml
PHP7 中的 pecl yaml 存在一些问题(请参阅下面的错误日志)。我可以看到:https ://pecl.php.net/package/yaml有一些 2.0 的 RC 可以解决这个问题......我目前正在运行命令:
但猜测这不会安装 RC 版本。如何安装 RC?也许有一个参数可以提供..?
我可以谷歌以下解决方案(未经测试):
但我想这将为所有扩展设置一个全局 beta 状态。我只想将此扩展安装为 beta ..
错误日志
debian - 如何在 debian 上安装 apcu 作为 php7 扩展
我已经看过这个 ubuntu 教程。 http://thereluctantdeveloper.com/2015/12/quick-and-dirty-php-70-set-up-on-ubuntu-1404-with-apcu
步骤(git clone)之后我不清楚。我的应用程序需要 apcu 扩展程序才能更快地执行。请指导在 debian 上安装 php 7 的 apcu 扩展。
yii2 - Yii2 与 PHP 7 兼容吗?
自 PHP 7 发布以来,我计划开始一个使用 Yii2 的新项目。我的问题是,将 PHP 7 与 Yii2 一起使用是否安全?
php - 适用于 Windows 的 PHP 7.0 ODBC 驱动程序
我将我的 PHP 5.6.30 ( https://www.apachefriends.org/de/download.html ) 升级到 PHP 7.0 ( https://bitnami.com/stack/wamp/installer )
到目前为止一切正常,当我使用 MySQL 数据库时,它将我的页面的加载时间从 1.2 秒减少到约 300 毫秒。但现在我正在尝试使用以下简单脚本连接到 MSSQL 数据库,该脚本在我的旧安装(PHP 5.6)中运行良好:
但是现在我的日志中有一个错误,上面写着:
[Thu Dec 10 11:55:26.629956 2015] [:error] [pid 260:tid 968] [client ::1:63003] PHP 致命错误:未捕获的错误:调用 C:\Bitnami\ 中的未定义函数 odbc_connect() wampstack-7.0.0-0\apache2\htdocs\test\query.php:11\n堆栈跟踪:\n#0 {main}\n 抛出 C:\Bitnami\wampstack-7.0.0-0\apache2\htdocs \test\query.php 第 11 行
首先我想,我的 php.ini 缺少扩展名,所以我启用了“extension=php_pdo_odbc.dll”
与 5.6 版本中的 php.ini 的不同之处在于启用了扩展名:“extension=php_mssql.dll”。但我在新的 PHP 7.0.ini 中找不到它们
所以我的意图是 odbc 和 PHP 7 还没有现有的驱动程序吗?我在这里找到了一些 Linux 驱动程序: https ://aur.archlinux.org/packages/php7-odbc/
但我需要一些适合我的 Windows 环境的东西。
有没有人有同样的问题并且已经解决了?
感谢和问候多米
php - readv() 在读取 php://input 时 PROPFIND 请求失败(PHP 7,nginx)
将我的服务器升级到 PHP 7 后,我在当前版本 8.1.1 中运行 ownCloud 时遇到了几个错误。
我试图找出问题所在,然后我回到了Sapi.php
Sabre lib。
我写了一个非常小的测试脚本来隔离错误。在使用 PROPFIND 请求运行以下代码时,我在日志中看到错误,并且我没有从 php://input 中获得任何输出。
使用 cURL 请求:
nginx错误日志中的错误:
服务器使用 PHP 5.6 就像一个魅力,我试图在不修改的情况下运行 PHP 7。服务器端的一切都很好,但是这个错误。
我还尝试了解决readv()
错误的建议并修改了几个设置,例如: