小编Ske*_*ets的帖子

从字符串中删除前3个字符

删除字符串前3个字符的最有效方法是什么?

例如:

'apple' change to 'le'  
'a cat' change to 'at'  
' a b c'change to 'b c'

java string

133
推荐指数
3
解决办法
19万
查看次数

基于密钥对PHP多维数组进行排序?

我正在尝试根据特定的密钥对我的PHP哈希表进行排序.数据结构如下所示:

print_r($mydata);

Array(
[0] => Array
    (
        [type] => suite
        [name] => A-Name
    )
[1] => Array
    (
        [type] => suite
        [name] => C-Name
    )
[2] => Array
    (
        [type] => suite
        [name] => B-Name
    )
)
Run Code Online (Sandbox Code Playgroud)

我尝试过ksort,sort,usort但似乎没什么用.我正在尝试根据名称键排序两级下来.

这是我尝试使用usort:

function cmp($a, $b) {
    return $b['name'] - $a['name'];
}

usort($mydata, "cmp");
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法可以做到这一点,还是我需要编写自定义排序功能?

php sorting

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

PHP:用".."正确截断字符串

目前,我用来截断字符串的方法是: echo substr($message, 0, 30)."..";

如何仅在字符串被截断的情况下显示点?

php

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

如何在 Laravel 构建器上执行“解释选择”

我知道我可以从查询日志中获取原始查询,粘贴所有绑定变量(也在查询日志中找到),explain在查询前面打上 a,然后直接在 mysql 控制台中运行它以获取解释查询......但是有没有更快的方法来获得解释?

理想情况下,我想做这样的事情:

$query = User::where("favorite_color", "blue");

dd($query->explain());
Run Code Online (Sandbox Code Playgroud)

(显然,实际的查询会更加复杂并且有一些连接)

我尝试添加explain这样的内容:

$query->selectRaw("explain select user.*");
Run Code Online (Sandbox Code Playgroud)

但这导致了一个以以下内容开头的查询:

select explain select...
Run Code Online (Sandbox Code Playgroud)

...这只是无效的sql。

php mysql explain laravel

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

iOS移动:在可滚动的父级内滚动iFrame

我在移动iOS Safari中遇到了一个问题,当在iFrame内部拖动时,在包含iFrame的div中滚动是不可能的:

#outside{
height: 400px;
width: 200px;
background: blue;
overflow: scroll;
}

.space{
  height: 200px;
  width: 200px;
  background: red;
}

iframe{
height: 1000px;
width: 200px;
background-color: green;
}
Run Code Online (Sandbox Code Playgroud)
The green section is the iFrame.... Scrolling on the green section in iOS mobile is the issue

<div id="outside">
<div class="space"></div>
<iframe>

</iframe>
<div class="space"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

因此,在iFrame上拖动时,由于它没有滚动,因此它应该滚动父页面,而是滚动整个页面.

这个bug有任何已知的解决方法吗?它已经在Android上运行了.

html css iframe mobile-safari ios

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

HTTPS之外的"安全起源"?

有时我会在Chrome Devtools中看到此警告:

You should consider switching your application to a secure origin, such as HTTPS.

这个"如HTTPS"有什么用?是否有"安全的起源" 不是HTTPS,你可以成为一个网站用?

我使用https没有问题(我已经在我正在处理的所有网站上启用了它).这个问题纯粹是出于好奇.

security https google-chrome google-chrome-devtools

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

为什么在PHP中使用"锁定"文件而不仅仅是计算进程?

我已经看过很多例子,其中使用"锁定"文件来跟踪PHP脚本当前是否正在运行.

例:

  1. 脚本开始
  2. 检查当前是否锁定了"/ tmp/lockfile"
  3. 如果已锁定,请退出.如果没有,请锁定文件并继续

这样,如果长时间运行的脚本启动两次,则只运行第一个实例.哪个好.

但是,这似乎是错误的方法.为什么我们不检查进程是否已经像这样运行?

if(exec("ps -C " . basename(__FILE__) . " --no-headers | wc -l") > 1){
  echo "Already running.";
  exit;
}
Run Code Online (Sandbox Code Playgroud)

这种方法有潜在的缺陷吗?为什么我经常看到"锁定"文件解决方法?使用我们正在寻找的名称计算流程似乎更准确....

php daemon command-line-interface

5
推荐指数
0
解决办法
251
查看次数

如何获得`git diff origin/master`的相反方向

如果我运行git diff origin/master,它会向我显示我的存储库中文件的本地副本与远程存储库中 master 分支中的文件的更改。

我知道您可以列出另一个参数,然后交换参数以获得相反的结果:

git diff origin/branch_a origin/branch_b 变成: git diff origin/branch_b origin/branch_a

...但就我而言,我想与本地(可能未提交的)更改进行比较。

有没有办法做相反的事情git diff origin/master?所以基本上,输出是相同的,但不是说行被删除,而是说他们被添加,反之亦然。

我知道我可以编写一个脚本来解析文本并将其反转,但我认为必须有一种方法可以做到这一点,我只是不知道它是什么/找不到有关如何执行此操作的手册页。

git

4
推荐指数
1
解决办法
1161
查看次数

仅在模态为开放式IOS时如何禁用正文滚动

仅iOS / iPhone X / iPhone 7等

甚至jQuery模式库也不起作用!https://jquerymodal.com/-在iPhone上打开模态,您将能够滚动主体。

我发现很难找到一种在每次打开模态时都不会使页面跳到顶部而停止主体滚动的解决方案(这与页面滚动一样糟糕)

看来这是一个很大的问题,许多人都在经历。如您所见:

我没有运气就上网了,有人可以解决吗?

html css bootstrap-modal twitter-bootstrap-3

4
推荐指数
1
解决办法
3761
查看次数

PHP ampq + rabbit MQ -- 长时间运行的生产者:可以向已经声明的队列发送消息,但不能声明新的队列

我有一个应该一直运行的“生产者”,但似乎在一天左右后,它仍然能够将消息发送到它之前声明的队列,但是当尝试声明一个新队列时,它会爆炸:

'PhpAmqpLib\Exception\AMQPHeartbeatMissedException' with message 'Missed server heartbeat' in /php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/AbstractIO.php:140
Run Code Online (Sandbox Code Playgroud)

我认为心跳仅适用于消费者(因为没有地方可以检查生产者的心跳)?当我不是“消费者”时,正在检查心跳是否是一个错误?

还是我的脚本在声明队列时也变成了“消费者”,因为它需要“消耗”来自服务器的反馈,即队列已准备好使用什么的?

它目前的设置方式,我可以定期使用什么解决方法来检查它是否queue_declare会在运行时爆炸,以便当我需要运行时queue_declare它不会意外爆炸?

我正在使用AMQPSSLConnection最新版本 (2.9.2),并且$connection->isConnected()一直在返回true。心跳设置为 15 秒。

php rabbitmq php-amqplib

4
推荐指数
1
解决办法
1388
查看次数