问题标签 [php-7.2]

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 回答
164 浏览

php - 找不到目标实体 Doctrine

我的问题是,当我尝试使用此命令更新 ORM Doctrine 时:

我收到此错误:

第 762 行的代码是:

问题出在哪里?或者有一些很好的教义教程?因为官方的太坑了。

0 投票
1 回答
2947 浏览

dll - PHP Warning: PHP Startup: Unable to load dynamic library on Ubuntu

some background information:

Ubuntu 14.04 minimal and upgraded php from verion 5.x to 7.2

and now I get every 30 minutes an email from the cron daemon with the following subject:

Cron <root@v52775> [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi

and following content:

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20131226/php_intl.dll' - /usr/lib/php/20131226/php_intl.dll: cannot open shared object file: No such file or directory in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20131226/php_mysql.dll' - /usr/lib/php/20131226/php_mysql.dll: cannot open shared object file: No such file or directory in Unknown on line 0

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20131226/php_mysqli.dll' - /usr/lib/php/20131226/php_mysqli.dll: cannot open shared object file: No such file or directory in Unknown on line 0

I'm a little bit confused because I don't know how i get this .dll files and not any .so.

I look at the php info, so the intl and mysqli module are active. The same information I get when I write php -m on my terminal. But not the mysql extension! I disabled the older php version, only php 7.2 is running on my system.

The another confusing is the path. I'm not sure but in the e-mail from the cronjob ist the path /usr/lib/php/20131226/php_* but the php info shows me 20170718. I put a screenshot here.

screenshot php info extention

How I can fix it, I hope someone can help me? Please ask me if you need more information :)

0 投票
1 回答
123 浏览

php - 在模拟命名空间和原始命名空间中创建模拟 phpunit 差异

我有这样的功能:

现在我正在尝试使用 php 单元测试为类 Bar 创建一个模拟

但是当我调用方法a时,我收到一个错误,即方法a返回类型必须是 Foo 的实例而不是 Mocked_blahblah。

不幸的是,类 Bar 不使用任何接口,系统非常大,我无法创建接口,因为它在我的代码中进行了巨大的重构;有没有办法a在模拟对象中禁用函数的返回类型?我正在使用 php7.2 和 phpunit 6.0.13。这是一个真实的场景:

0 投票
0 回答
47 浏览

php - 如果父函数的参数多于子函数,则扩展函数不再有效,即使额外的参数具有默认值

我注意到自 PHP 7.2 以来的一个问题,即如果父函数的参数比子函数的参数多,即使父类中的额外参数具有默认值,扩展函数也不再起作用。

抛出以下致命错误:

这是一个 Symfony 项目,其中一个表单类(在这种情况下PageType)从一个共享表单类扩展而来CoreType,因此我们的许多表单可以获得某些通用功能。-- 这个问题不仅限于PageType类,它只是我们注意到的第一个例子。

CoreType将公共函数定义buildForm为:

PageType(和任何其他从 扩展的CoreType)定义buildForm为:

然后函数PageType::buildForm()(和其他函数)通常会调用CoreType::buildForm()以使用一些常见行为来完成表单构建,可选择不放入提交按钮($noSubmit),或出于各种原因调整提交按钮文本($submitText)。例子:

从 PHP 5.5 一直到 7.1,这一直有效,但我们突然发现 PHP 7.2 不允许这样做。(在7.1 到 7.2 迁移文档中看不到任何提及此类更改的内容。)

多年来我们是否一直在做这个错误,或者这是 PHP 7.2 中的错误/弃用?

这对我们来说不是什么大问题,因为我们可以轻松切换 PHP 版本,但我很欣赏某些设置(例如带有包管理器的 Linux)这并不容易。

0 投票
2 回答
117470 浏览

php - PHP 中的严格类型有什么作用?

我在 PHP 7 中看到了以下新行,但没有人真正解释它的含义。我用谷歌搜索了它,他们谈论的只是你会启用它还是不喜欢投票类型的东西。

它有什么作用?它如何影响我的代码?我应该这样做吗?

一些解释会很好。

0 投票
0 回答
44 浏览

php - 如何组织无框架项目的组件?

简短版本:在 PHP 中存储依赖项的控制器的常见位置在哪里?


长版:我需要创建一个高质量的项目,来自框架背景,我对目录结构的了解有点生疏,我需要一些帮助。

当前目录结构:https ://i.imgur.com/sxowces.png

我使用控制器的“控制器”指令作为路由的回调。我创建的每个 HTML 页面都会为其路由分配一个控制器。当我不得不为依赖项创建一个“控制器”时遇到了一个问题,例如 Twig 模板引擎。根据过去的经验,我了解到您不应该直接从创建的实例调用 twig 库,而应该创建一个包含实例的类并通过该类进行调用,对吗?

这带来了一个新问题,我不知道如何构造它。我不确定他们是否调用了控制器,但是我应该将它们放在我的项目目录结构中的什么位置?常见的做法是什么?

将它们放在控制器目录中似乎很乱,因为这是为页面控制器保留的。来自 Laravel 背景,我从来没有这样做过。所以我的问题是,“我当前的目录结构好吗?”以及“依赖项的“控制器”在哪里??

0 投票
1 回答
458 浏览

php - 不推荐使用 create_function() 调用

我刚刚将我的服务器更新到最新版本的 php 7.2,现在我收到了一些折旧警告。我应该怎么办?

自 PHP 7.2.0 起,该函数已被弃用。强烈建议不要依赖此功能。

这是我的代码:

0 投票
2 回答
5053 浏览

yii2 - count():参数必须是数组或对象,php 7.2.1中实现了Countable

count() : 参数必须是使用Yii2在php 7.2.1中实现 Countable 的数组或对象

如何解决这个问题?

0 投票
3 回答
3961 浏览

amazon-web-services - 在亚马逊 ec2 linux 2 上安装 php-imap

我需要在 amazon ec2 linux 2 实例上安装 php-imap。所有的 php 内容都在 amzn2extra-lamp-mariadb10.2-php7.2 中,但缺少 php-imap 包。有什么建议吗?

谢谢

0 投票
0 回答
512 浏览

php - 返回未定义变量的学说:元数据错误

我正在尝试使用 Doctrine 生成用于新应用程序的实体。我以前使用过 Doctrine,从来没有遇到过这个问题,而且我似乎无法找到为什么在网上任何地方都会发生这种情况的答案。我目前正在使用 PHP-7.2 和 Doctrine 版本的 Ubuntu 17.10 上运行它doctrine/orm: ^2.5

然后映射文件制作完成后是这样的:

然后我尝试运行这个命令:

我收到一个错误,指出:

有谁知道为什么 Doctrine 会生成一个具有未定义变量的映射,以及我将如何修复它?