问题标签 [php-8]
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 - 只有第一个字节将分配给字符串偏移警告
刚迁移到 PHP 8 之后,就出现了这个错误;你知道如何解决这个问题吗?
PHP 警告:只有第一个字节将分配给字符串偏移量
它出现在这 2 行中:
这是他们周围的代码:
php - PHP单元测试不兼容PHP8,是否支持向后兼容?
我在 PHPUnit 中有几个测试单元,PHPUnit 与 php8 不兼容。我正在寻找一种在 PHP8 上运行旧测试的方法。PHPUnit 是否有任何包装器可以与 PHP8 一起使用?
顺便说一句,这是我在 composer install 上的错误:
它可以通过从 PHPUnit 作曲家文件中删除要求来工作。
php - 为什么 fopen() 中的某些访问模式会在我的新服务器上引发 PHP 警告?
我正在执行从php 5.6.40(Apache 2.2.15 CentOS 6.10 服务器)到php 8.0.1(Apache 2.4.37 CentOS 8.3)的 PHP 脚本迁移。
我遇到fopen()
了根据模式选项引发警告的功能。我在网上搜索了没有发现类似的问题...
在每台服务器上,我都有相同的上下文和相同的权限:
我的测试脚本非常简单,它检查所有 fopen 模式:
运行此脚本时,我获得:
在我的旧服务器 PHP 5.6.40
这些警告是合乎逻辑的(文件存在和排除)。
在我的新服务器 PHP 8.0.1
第 8 行和第 9 行的警告在这里也很有意义。
模式 r+、w[+] 和 c[+] 生成“权限被拒绝”警告。
模式 r, a[+] 运行良好,没有警告。
我可以使用“r”选项读取文件。我可以使用“a”和“a+”选项来编写文件,所以它看起来不像是权限问题。
我想了解并且不必更正我的应用程序的所有 fopen() ...
php - 如何在 Opensuse 风滚草中安装 PHP8 XDebug?
我正在尝试在 PHP8 中调试 PHP 脚本。我已经安装了 PHP8 和我的大部分依赖项。但是 OpenSUSE 存储库中没有 php8-xdebug。
是否可以为 PHP8 安装 xdebug?
php - 作曲家因信号 9 失败
我对 Composer 的失败感到困惑。任何人都可以帮忙吗?我所看到的关于“信号 9”的唯一事情与资源限制有关,而我没有。看起来 require() 失败了?
我有一个新的基于 M1 的 macbook air,运行 PHP8.0.0
并安装了 Composer (v2.0.8),两者都使用homebrew
. 我正在尝试创建一个新的 Cakephp 项目。
我已经安装并运行了 git。
当我运行时:
composer -vvv create-project --prefer-dist cakephp/app projectname
Composer 因 Symfony 运行时异常而失败signal 9
- 如下所示:
php - 我已经将我的项目 PHP 版本升级到 8 并将 PHPUnit 升级到 9.x,但不再生成覆盖率报告?
我尝试从 PHP 7 迁移到 PHP 8。我更新了所有依赖项,然后使用以下命令转换 PHPUnit 配置:
问题是不再生成覆盖率报告?!虽然所有测试都可以。
这是 phpunit.xml 文件的结果:
所有测试运行正常,但没有覆盖率报告!!。
php - 使用 Composer 安装 PHP 8 时出现包错误
我想运行我从 Gitlab 存储库中克隆的 laravel 应用程序。但是,在运行composer update
命令时将我抛出错误。
环境:
php -v
: PHP 8.0.1
composer --version
: 2.0.9
我知道 PHP 8 还没有提供对所有包的支持。但仍在寻找最小的工作解决方案来在本地机器上运行我的项目。
我尝试了 laravel 的以下文章。但也无法安装“fakerphp/faker”。
composer.json
我什至删除了我的composer.lock
并尝试运行composer install
但仍然出现错误。
php - Xdebug v3.0.2 与 PHP v8.0.0
我刚刚使用 XAMPP v3.2.4 迁移到 php v8.0.0。但是 Xdebug 不工作。执行不会在断点处停止。
我的安装说明——
这是安装摘要-
php.ini
VS 代码 launch.json -
php - 参数 #1 ($parser) 必须通过引用传递
从 PHP 7.4 迁移到 PHP 8.0,我遇到了一些代码抛出警告的问题。代码有效,但我想找出问题所在。PHP 7.4 中没有警告。以下是警告:(已修改以将我的信息从错误中删除)
PHP 警告:XML::open():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
PHP 警告:XML::open():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
PHP 警告:XML::open():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
PHP 警告:XML::data():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
PHP 警告:XML::close():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
PHP 警告:XML::open():参数 #1 ($parser) 必须通过引用传递,值在第 89 行的 .../classes/xml_5.php 中给出
(他们一直在做同样的事情)
编码:
问题行 (89) 在最后,这一行:
我看到在 PHP 8 中 xml_parse 发生了变化: 8.0.0 解析器现在需要一个 XMLParser 实例;以前,需要资源。
我已经花了几天的时间,我错过了一些东西!感谢大家!
php - PHP 启动:无法加载动态库 'oci8_12c'
我有个问题。我通过 Composer 安装了最后一个安全的 PHP 8.0.1,Laravel。将作曲家更新到 2.0.9。现在每个 php/composer 命令都会继续发出如下警告:
Warning: PHP Startup: Unable to load dynamic library 'oci8_12c'
Warning: PHP Startup: Unable to load dynamic library 'pdo_firebird'
Warning: PHP Startup: Unable to load dynamic library 'pdo_oci'
我在welcome.blade.php 上的项目说:
Unchecked runtime.lastError: The message port closed before a response was received.
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
我应该怎么做才能解决这个问题?