小编Joh*_*hni的帖子

显示没有科学记数法的浮点值

当我在PHP中进行以下乘法时:

$ret = 1.0 * 0.000000001;
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:1.0E-9

我想将此结果转换为正常的十进制表示法,我该怎么做?

sprintf('%f',$ret)不起作用,它返回0.000000.溢出?

php floating-point

14
推荐指数
2
解决办法
2万
查看次数

在不运行控制台命令的情况下清理缓存的最佳方法是什么?

在我的项目的管理面板中,我编写了更改要使用的数据库名称的功能.我在其中编写了新的数据库名称parameters.ini,之后必须清理缓存以加载新的配置.

在不运行控制台命令的情况下清理缓存的最佳方法是什么?

或者是否有另一种最佳实践如何更改当前数据库.

php caching symfony

13
推荐指数
2
解决办法
4万
查看次数

Angular 2:使用参数和可选参数重定向路由

我想将路线重定向到另一条路线:

/ foo/bar/123 schould重定向到/ bar/123; mode = test

我按以下方式配置了路由:

{ path: 'foo/bar/:id', redirectTo: '/bar/:id;mode=test' },

当它重定向时,;mode=test目标URL中缺少该部分.我怎么能包括这个?

angular-routing angular

8
推荐指数
1
解决办法
2万
查看次数

如果陈述和PSR-2很长

我即将将一些代码迁移到PSR-2标准.在我的代码中,我有if多个行的语句作为表达式:

if (    $field->getBlockMode() == FieldInterface::BLOCK_MODE_HIDEVAR &&
        !isset($this->enabledBlocks[$field->getBlock()])
) {

}
Run Code Online (Sandbox Code Playgroud)

编写此类表达式的最佳做法是什么?

php coding-style

7
推荐指数
1
解决办法
5001
查看次数

Zend Studio 9中没有PHP函数类型等

我打算转到Zend Studio 9,并将试用版本与我的版本8并行安装.现在我加载了我的旧Workspace,我的Zend Framework项目对php一无所知.

例如,如果我尝试扩展异常,它会说:"无法从接口异常扩展".或者'file_get_contents'结束于:'调用未定义的函数.

所以似乎没有加载PHP定义,但我怎么能改变它?在Zend Studio 8中,它仍然有效.

php zend-framework zend-studio

5
推荐指数
1
解决办法
1725
查看次数

Symfony 2.0资产转储在调试模式下产生错误的名称

我正在通过资产压缩我的javascripts(在一个目录中所有脚本的树枝块),这在prod模式下工作正常.现在我想为我的prod env使用调试模式,所以我在配置中切换资产到调试,清除缓存并在调试时转储资产.

这适用于一些javascripts但不是全部.Symfony为它们添加了一个后缀编号,它在网站(javascript标签)上与实际文件相反(一个).有时清除缓存并再次转储解决了问题,但这次没有.

例如:它转储:/web/js/main_part_3_jquery-ui_6.js但是使用:/web/js/main_part_3_jquery-ui_1.js

那我怎么解决这个问题呢?

编辑:清除缓存后,对网站的第一个请求中不显示wron后缀.

symfony assetic

5
推荐指数
1
解决办法
2792
查看次数

在子目录中使用反向代理运行 Symfony 5

我喜欢在提供以下端点的反向代理后面运行 Symfony 5 应用程序:

https://my.domain/service1/

代理配置基本上是这样的:

ProxyPass /marketsy/ http://internal.service1/
Run Code Online (Sandbox Code Playgroud)

在反向代理连接到的服务器上,我使用以下 apache 规则为我的 Symfony 应用程序提供服务:

<VirtualHost *:80>
  ServerName internal.service1
  DocumentRoot /webroot/service1/public

 <FilesMatch \.php$>
     SetHandler proxy:unix:/run/php/php7.2-fpm-ui.sock|fcgi://localhost
     SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1
     SetEnv HTTP_X_FORWARDED_PROTO "https"
 </FilesMatch>

 <Directory  /webroot/service1/public>
     AllowOverride None
     Require all granted
     FallbackResource /index.php
 </Directory>

 <Directory  /webroot/service1/public/bundles>
     FallbackResource disabled
 </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

应用程序本身是可重新访问的,但 Symfony 无法处理“service1”路径前缀。

例如,它尝试访问https://my.domain/_wdt/8e3926而不是https://my.domain/service1/_wdt/8e3926下的探查器,并且除了根路由之外,所有路由都不起作用:

例如:当我尝试访问https://my.domain/service1/my/page 时,我将被重定向到https://my.domain/my/page

现在我的问题是,当生成 urls 时,如何配置 Symfony 以了解“service1”路径前缀。

php symfony

5
推荐指数
1
解决办法
978
查看次数

Symfony 2链接到当前页面

如何在模板中创建当前链接?

我想创建一个语言切换器,它应该链接到varios语言中的当前页面,因此所有参数应该与语言环境相同.

php routes symfony twig

2
推荐指数
1
解决办法
4099
查看次数

Zend Framework附加获取NGINX的参数

我按照以下方式配置我的NGINX for Zend(PHP 5.3 with fpm):

server {
root /home/page/public/;
index index.php index.html index.htm;

server_name localhost;

location / {
    try_files $uri $uri/ /index.php;
}

location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

location ~ /\.ht {
    deny all;
}
}
Run Code Online (Sandbox Code Playgroud)

现在我想处理额外的get params,例如:http://web.site/index?par = 1

与我的本地开发系统(Apache)一样,它可以正常工作但不在NGINX下,它没有提供获取参数.

安妮的建议?

编辑:

现在我使用以下配置似乎有效,但我对它不满意,因为每个人都建议"尽可能使用try_files".

location / {
    if (!-e $request_filename) {
        rewrite  /(.*)$  /index.php?q=$1  last;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

php zend-framework get nginx

0
推荐指数
1
解决办法
1350
查看次数