小编Has*_*ast的帖子

在phpstorm中包装的单词

如何在phpstorm中启用Word包装?我只需要为我的一些文件启用它(扩展名为.txt).有可能吗?

phpstorm

178
推荐指数
9
解决办法
10万
查看次数

在MySQL中存储IP地址的最有效方法

在MySQL中存储和检索IP地址的最有效方法是什么?现在我正在做:

SELECT * FROM logins WHERE ip = '1.2.3.4'
Run Code Online (Sandbox Code Playgroud)

ip是一个VARCHAR(15)字段.

有一个更好的方法吗?

mysql sql ip-address

69
推荐指数
3
解决办法
5万
查看次数

主键与唯一约束?

我目前正在设计一个全新的数据库.在学校里,我们总是学会在每张桌子上放一把主键.

我阅读了很多文章/讨论/新闻组的帖子,说最好使用唯一约束(也就是某些数据库的唯一索引)而不是PK.

你的观点是什么?

database database-design

44
推荐指数
5
解决办法
4万
查看次数

如何在php脚本完成之前导致重定向?

我想运行一个PHP脚本,它会发送一堆电子邮件(新闻通讯),但由于它可能需要一段时间才能运行,我希望用户立即被重定向到一个页面,其中包含"您的新闻通讯排队等待的消息"送出."
到目前为止,标头重定向工作,但直到所有电子邮件发送后才会导致重定向.我可以在发送重定向后关闭连接,以便浏览器立即对重定向进行操作吗?我试过这样的东西


ob_start();
ignore_user_abort(true);
header( "refresh:1;url=waitforit.php?msg=Newsletters queued up, will send soon.");
header("Connection: close");
header("Content-Length: " . mb_strlen($resp));
echo $resp;
//@ob_end_clean();
ob_end_flush();
flush();

以各种排列和组合但无济于事.我怀疑它不能这么简单,但在我开始搞乱cron作业或自定义守护进程之前,我想我会考虑这种方法.谢谢

例如下面的块头建议,但没有运气

ob_start();
ignore_user_abort(true);
header( "refresh:1;url=mailing_done.php?msg=Newsletters queued for sending.");
header("Connection: close");
header("Content-Length: 0" );
//echo $resp;
ob_end_flush();
flush(); 
Run Code Online (Sandbox Code Playgroud)

php redirect header

9
推荐指数
2
解决办法
4578
查看次数

PhpStorm Symfony剖析器

如何让symfony profiler在phpstorm中工作?它应该在状态栏中,但当我打开那个窗口时,它总是说:"这里没什么".在配置中正确定义了缓存目录,symfony插件本身工作正常.但是探查器从不显示信息.

PhpStorm:8.0.3,Symfony插件:0.11.92

php symfony phpstorm

9
推荐指数
1
解决办法
815
查看次数

Google OAuth JWT签名验证

我正在PHP项目中创建自己的google oauth实现.一切正常,除非我JWT访问令牌请求后尝试验证收到(https://accounts.google.com/o/oauth2/token).

对于JWT解码我使用的是firebase/php-jwt类.

它解码完美,但是如果我打开$verify选项(decode()方法3-rd arg),我得到:Signature verification failed异常抛出.

我的猜测是,如果我将错误的密钥传递给decode()方法.hash_hmac()当签名生成完成后,它稍后用于函数.

所以我的问题是:我应该将什么密钥传递给Google OAuth JWT上下文进行签名验证?

php validation jwt google-oauth

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

Symfony2自定义存储库类

我是symfony2的新手,我正在尝试创建自定义存储库类,并且无法做到.

这是我在做的事情:

  • 我在实体类中添加了注释(MobilePhones)

@ORM \实体(repositoryClass = "Maak\DefaultBundle \实体\ MobilePhonesRepository")

  • 在MobilePhonesRepository中,我创建了名为的自定义函数 findAllMobilePhones()

  • 在控制器我调用函数使用:

$ EM-> getRepository( 'MaakDefaultBundle:MobilePhones') - > findAllMobilePhones();

但是我得到了Undefined method findAllMobilePhones(),我已经清除缓存并尝试但同样的错误.怎么了?

我的存储库类:

<?php

namespace Maak\DefaultBundle\Entity;
use Doctrine\ORM\EntityRepository;

class MobilePhonesRepository extends EntityRepository
{
    public function findAllMobilePhones()
    {
        return $this->getEntityManager()->createQuery('SELECT p FROM AcmeStoreBundle:Product p ORDER BY p.name ASC') ->getResult();
    }
}
Run Code Online (Sandbox Code Playgroud)

php entity repository symfony doctrine-orm

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

SonataAdmin:替换面包屑中的ID

如何通过其他文本替换SonataAdmin面包屑中的Object ID?

如果我在我的文档中设置__toString(),它只适用于编辑.当我尝试创建新记录时,就会出现类似于MyDocument:0000000000e09f5c000000006a48ef49最后一个记录.

我正在寻找一种方法,它允许我将一些文本设置为最后一个面包片,如果Document :: toString()返回null.

breadcrumbs symfony sonata-admin

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

教条加入许多与许多没有关联

我有:两个具有非定向M:M关联的实体.

class ShareInfo
{
    // ...

    /**
     * @ORM\ManyToMany(targetEntity="Item")
     * @ORM\JoinTable(name="share_info_items",
     *      joinColumns={@ORM\JoinColumn(name="share_id", referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(name="item_id", referencedColumnName="id")})
     *
     * @var Item[]
     */
    private $items;
}

class Item
{
    // ...

    // This entity has no association with ShareInfo,
    // because M:M is undirectional and defined in ShareInfo entity
}
Run Code Online (Sandbox Code Playgroud)

我想要的: 从items表(Item实体)中选择数据,其中Item和ShareInfo之间至少存在一个M:M记录.

我的建议不起作用(我有语义错误):

$queryBuilder
    ->select('i')
    ->from(Item::class, 'i')
    ->innerJoin(ShareInfo::class, 'shareInfo', 'WITH', 'shareInfo.items = i');
Run Code Online (Sandbox Code Playgroud)

在纯SQL中我会做这样的事情:

SELECT i.*
FROM items i
INNER JOIN share_info_items shareInfo
    ON shareInfo.item_id = i.id
Run Code Online (Sandbox Code Playgroud)

不能相信没有DQL模拟.我能想象的唯一解决方案是将非定向M:M关联分成双向

PS这个问题没有重复,我检查得很好.

php many-to-many join symfony doctrine-orm

6
推荐指数
1
解决办法
1012
查看次数

获取 openssl 证书到期日期

我已经通过openssl_x509_parse()函数解析了 openssl 证书,并得到了一个数组作为结果。

现在我需要获取该证书的到期时间。在解析的数组中,我有validTo_time_t包含有效 unix 时间戳的元素。但是如何确定这个时间戳属于哪个时区呢?

所以我无法获得真正的过期时间,因为该时间戳意味着不同时区的不同日期。

php openssl ssl-certificate php-openssl

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