Questions tagged «php»

PHP是一种广泛使用的高级动态,面向对象和解释性脚本语言,主要用于服务器端Web开发。用于有关PHP语言的问题。


2
PHP是否会对php.ini文件进行任何解析?
在RHEL 7.7下运行PHP版本7.1.30。 我想提高memory_limit,但不确定我是否具有正确的语法(即256M或256MB)。因此,我首先在memory_limit设置中输入了一个错误的值“ Hugo”。麻烦的是phpinfo()(在httpd下运行)的结果,字面上有字符串“ Hugo”,即: 因此,这让我有些担心,PHP实际上并未对值进行任何合理性检查。(如果提供的值不正确,我希望它恢复为默认值,例如) 任何人都可以对此发表评论-特别是,您如何知道PHP是否将强制执行操作(如果可以提供任意字符串)。
24 php  apache  rhel 

7
使用Eloquent获取模型子类型的实例
我有一个Animal基于animal表格的模型。 该表包含一个type字段,可以包含诸如cat或dog的值。 我希望能够创建如下对象: class Animal extends Model { } class Dog extends Animal { } class Cat extends Animal { } 但是,能够像这样取出动物: $animal = Animal::find($id); 但是在哪里$animal可以作为实例Dog或Cat取决于type字段,我可以检查使用instance of还是可以与类型提示方法一起使用。原因是90%的代码是共享的,但是一个可以吠叫,而另一个可以叫。 我知道我可以做到Dog::find($id),但这不是我想要的:我只能在提取对象后确定其类型。我也可以获取Animal,然后find()在正确的对象上运行,但是这样做是两个数据库调用,我显然不希望这样做。 我试图寻找一种方法来“手动”实例化Eloquent模型,例如Animal的Dog,但是我找不到对应的任何方法。我有什么想法或方法想念吗?
22 php  laravel  eloquent 

4
vcruntime140.dll 14.0与PHP版本不兼容
我已经在Windows Server 2016计算机上下载了PHP 7.4.1 NTS vc15 x86。我也下载并安装了vc_redist.x86.exe。 当我尝试从命令提示符运行php-cgi时,出现以下错误: PHP警告:“ vcruntime140.dll” 14.0与链接到第0行中的14.16的此PHP版本不兼容 有关如何解决此问题的任何想法?我想我可以从档案中安装旧版本的PHP,但这并不能真正解决问题。

6
仅在单独行中删除术语
我有这个: $text = ' hello world    hello '; 我如何  仅在其自己的线路上将其删除?因此,在上面的示例中,第二个 应删除。结果应为: $text = ' hello world  hello '; 到目前为止我尝试过的 通过str_replace(),我可以: $text = str_replace(' ', '', $text); 但这不仅会删除的所有实例 ,而且会单独删除。
16 php  str-replace 

2
我想将新的segmentId(具有相同的名称)添加到映射数组中,但具有不同的elementId但具有相同的方法
以下是MapperInterface.php 我试图弄清楚如何在const中添加if-else语句。映射数组。像这样: if (LIN02 == “VN”) o Treat LIN03 as the SKU · else if (LIN04 == “VN”) o Treat LIN05 as the SKU <?php declare(strict_types=1); namespace Direct\OrderUpdate\Api; use Direct\OrderUpdate\Api\OrderUpdateInterface; /** * Interface MapperInterface * Translates parsed edi file data to a \Direct\OrderUpdate\Api\OrderUpdateInterface * @package Direct\OrderUpdate\Api */ interface MapperInterface { …
14 php  arrays  mapping  const 

2
Apple Pay-仅当在线沙盒有效时,authorize.net才返回错误153
在搜索了很多文章之后,我找不到我的问题的解决方案。 我已经在网站上集成了ApplePay按钮,并在沙盒模式下成功完成了交易。我正在使用authorize.net php SDK生成请求。当我转为居住时,问题开始了。来自authorize.net的消息是“ 处理付款数据时出错。解密数据中缺少必填字段 ” 这是我所做的: 使用真实的authorize.net帐户中的一张更改了付款处理证书 将我用来处理authorize.net付款的凭据更改为我获得付款流程证书的真实账户 使用带有真实信用卡的实时Apple设备。 我正在使用First data Nashville处理器作为支持ApplePay的CC处理器 请注意,如果我切换回沙盒模式,则事务将顺利通过。 该请求和失败的响应如下: 请求: { "createTransactionRequest":{ "merchantAuthentication":{ "name":"xxxxxxxxx", "transactionKey":"xxxxxxxxxxx" }, "clientId":"sdk-php-2.0.0", "refId":"ref1575669789", "transactionRequest":{ "transactionType":"authOnlyTransaction", "amount":"14.08", "payment":{ "opaqueData":{ "dataDescriptor":"COMMON.APPLE.INAPP.PAYMENT", "dataValue":"eyJ2ZXJzaW9u...Q1OSJ9fQ==" } }, "order":{ "invoiceNumber":"63059-191206", "description":"xxxxxxxxx, xxxxxxxxxxxx v9.0.12 (Order# 63059-191206)" }, "customer":{ "type":"individual", "email":"" }, "billTo":{ "firstName":"xxxxxxx", "lastName":"xxxxxxx", "address":"xxxx San …

3
如何在Apache 2.4和PHP 7.1的Chrome中解决跨站点Google Analytics(分析)Cookie“ SameSite = None”警告?
我客户的网站在Chrome中收到这些SameSite Cookie警告。我到处搜寻了,但警告却消失了。这些Cookie是由于Wordpress网站上的Google广告转化跟踪所致。由于兼容性原因,该站点位于由运行PHP 7.1的DreamHost托管的Apache / 2.4.7(Ubuntu)上。在我的.htaccess文件中,我尝试添加: Header always edit Set-Cookie (.*) "$1; SameSite=None" 我尝试了 Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure ...我尝试了 Header always edit Set-Cookie (.*) "$1; SameSite=None;Secure" 以及许多其他组合,包括SameSite = Lax 一本指南建议使用PHP 7.2及以下版本: header('Set-Cookie: cross-site-cookie=bar; SameSite=None; Secure'); 但这给了我一个500 Internal Server Erorr。 但是我仍然遇到以下三个错误: 设置了与跨站点资源关联的cookie,但未设置该SameSite属性。如果将来的Chrome浏览器版本将cookie设置为SameSite=None和,则仅会提供带有跨站点请求的cookie Secure。您可以在“应用程序”>“存储”>“ Cookies”下的开发人员工具中查看Cookie,并在和处查看更多详细信息。 (索引):1 设置了与http://doubleclick.net/上的资源关联的cookie ,SameSite=None但未设置Secure。Chrome的未来版本将仅提供SameSite=None带有标记的cookie Secure。您可以在“应用程序”>“存储”>“ Cookies”下的开发人员工具中查看Cookie,并在https://www.chromestatus.com/feature/5633521622188032上查看更多详细信息。 (索引):1 设置了与http://google.com/上的资源关联的cookie …


9
如何将Java脚本变量作为值加载到引导程序模型文本框中
我在引导模型输入框中的javascript变量加载中遇到一些问题: setTimeout(function() { swal({ title: "OverTime Status!", text: "You Need to get Sub OT Approval " + data.value + " Hours to Time allocate in the department", type: "warning", confirmButtonText: "OK" }, function(isConfirm) { if (isConfirm) { $('#hours_work').val(data.value); //data.value alert the correct value in here.but this value not load in …

2
将Symfony 4.3.9升级到4.4.1 / 5.0后的弃用警告
我安装了没有弃用的Symfony 3.4.9。所以我将固件升级到4.1.1。现在,我收到了9个弃用警告,所有警告均来自供应商库: 不赞成创建Doctrine \ ORM \ Mapping \ UnderscoreNamingStrategy而不通知其编号的做法已被弃用,并将在Doctrine ORM 3.0中将其删除。 从Symfony 4.4开始,不推荐使用“ Symfony \ Component \ HttpKernel \ EventListener \ ExceptionListener”类,请改用“ ErrorListener”。 从学说/持久性1.3开始不建议使用Doctrine \ Common \ Persistence \ Mapping \ AbstractClassMetadataFactory类,并且在2.0中将删除该类。请改用\ Doctrine \ Persistence \ Mapping \ AbstractClassMetadataFactory。 从学说/持久性1.3开始,不建议使用Doctrine \ Common \ Persistence \ Mapping \ RuntimeReflectionService类,并将在2.0中删除它。请改用\ Doctrine \ …

2
Docker&Laravel:配置:错误:未满足软件包要求(oniguruma)
谁能帮助我解决这个问题。 当我尝试从laravel应用的dockerfile创建docker镜像时,出现以下错误: 检查oniguruma ...否配置:错误:不符合包装要求(oniguruma): No package 'oniguruma' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables ONIG_CFLAGS and ONIG_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. 命令'/ bin / …

6
当用户使计算机进入睡眠状态时,将其从网站注销
这是一个奇怪的问题。我们有一个Laravel网站,在所说的网站上,每个用户都有一个计时器,在启动之前,他们会在15分钟内处于非活动状态。 我们通过一个React组件中位于页面上的计时器来执行此操作,它可以按期望的方式工作,但是现在我们遇到了一个新问题:如果用户登录并关闭笔记本电脑的盖子,则网站应该启动它们。银行这样做,学校和大学这样做,政府场所也这样做。因此有可能,只是不确定如何。 我们使用laravel-websockets库和Echo 来使用Web套接字。我希望看到的是: 关闭笔记本电脑启动后,您将进入登录屏幕。因此,下次打开笔记本电脑并登录时,会在登录屏幕上看到浏览器。它并不需要很快发生,但是我们需要一种方法来将一些内容发送到前端,基本上告诉他们刷新页面,一旦会话被终止,我们将会话生存时间设置为15分钟。 有人在其他类似问题中提出了建议: 创建一个自定义的网络套接字处理程序 将会话cookie(在浏览器中)与后端的用户cookie进行比较。 要在前端运行计时器(我们这样做,当您合上笔记本电脑盖时它会停止) 最受欢迎的一种似乎是使用网络套接字,侦听用户断开连接然后再启动它们,这很好,而且一切正常,但是如何将请求发送到已暂停然后再启动的浏览器? 我发现了requestIdleCallback()但是,如果我已经在该站点上安装了心跳计时器,那么我不希望这就是我想要的。它也不适用于所有浏览器。 我对如何完成此操作非常迷失,我可以举的例子是: 登录到您的银行,使计算机进入睡眠状态,等待15-20分钟,唤醒计算机,然后登录,然后在登录屏幕上看到您的银行已将您带入。那就是我想要的。但是我不知道该怎么做到。 您不能从后端将事件发送到“正在休眠”的浏览器,虽然是的,这必须是后端解决方案,但是如何更新前端,以便重新唤醒笔记本电脑时它们出现在注销屏幕上还是电脑?

3
TCPDF全页表
我尝试了多种方法使表格适合页面(A4),如图所示: 我进行了很多搜索,但找不到任何有用的网络内容。我正在使用动态表格,除表格的宽度外,其他一切都正常。这是我的代码: $content = '<table><thead><tr><th class="bg-dark text-white" align="center">#</th><th align="center" class="bg-dark text-white">Code</th><th align="left" class="bg-dark text-white">Description</th><th align="center" class="bg-dark text-white">Item Type</th></tr></thead><tbody><tr style="background-color: #f2f2f2;"><td align="center">1</td><td align="center">1001</td><td align="left">Pofak</td><td align="center">Fixed Price</td></tr><tr ><td align="center">2</td><td align="center">1002</td><td align="left">Ice</td><td align="center">Weight</td></tr><tr style="background-color: #f2f2f2;"><td align="center">3</td><td align="center">1003</td><td align="left">Minoo</td><td align="center">Fixed Price</td></tr><tr ><td align="center">4</td><td align="center">1004</td><td align="left">Bastani</td><td align="center">Fixed Price</td></tr><tr style="background-color: #f2f2f2;"><td align="center">5</td><td align="center">1005</td><td align="left">Chocolate</td><td align="center">Weight</td></tr><tr ><td …
11 php  html  css  tcpdf 

2
在PHP中:“ return”,“ yield”,“ yield from”和将yield和return混合在同一函数之间有什么区别?
return和之间的区别yield似乎很明显,直到我弄清楚那里也存在,yield from并且可以将两者return和yield相同的功能组合在一起! 我的理解return是,之后的所有事情都没有执行,对吗? 然而: function generate(): iterable { return [1, 2, 3]; } foreach (generate() as $value) { echo $value; } 产生:“ 123” 但是以下内容: function generate(): iterable { return [1, 2, 3]; yield; } foreach (generate() as $value) { echo $value; } 什么都不产生!这样就意味着执行了yield? 这是一个错误吗?
10 php  return  generator  yield 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.