小编Mik*_*ike的帖子

似乎无法从PHP date()中转义字符;

我试图让日期等于:发表于2013年8月5日06:55.但是我似乎无法让"on"部分正常工作.我已经尝试过反斜杠我想要的角色,但是每当这样的事情发生时:06:55 PM o 8/5/13 我似乎无法让"n"显示出来.

这就是我所拥有的:

date("h:i A \o\n m/d/y");
Run Code Online (Sandbox Code Playgroud)

根据php手册网站,这应该工作.帮帮我?谢谢.

php escaping date

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

是什么导致PDO错误当其他无缓冲的查询处于活动状态时,无法执行查询?

我有以下代码:

$dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbh->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $dbh->prepare("SELECT 1");
$stmt->execute();
$result = $stmt->fetch();

$stmt->execute();
$result = $stmt->fetch();

$stmt = $dbh->prepare("SELECT 1");
$stmt->execute();
$result = $stmt->fetch();
Run Code Online (Sandbox Code Playgroud)

但是,由于某种原因,我在执行第二个预准备语句时遇到以下错误:

致命错误:带有消息'SQLSTATE [HY000]的未捕获异常'PDOException':常规错误:2014在其他未缓冲的查询处于活动状态时无法执行查询.考虑使用PDOStatement :: fetchAll().或者,如果您的代码只是针对mysql运行,则可以通过设置PDO :: MYSQL_ATTR_USE_BUFFERED_QUERY属性来启用查询缓冲.

我知道这个错误意味着什么以及如何解决它(或者做unset($stmt);或者$stmt->closeCursor();),所以我不是在寻找如何让它工作的解决方案.据我所知,这通常是由于fetch取而代之fetchAll而不是取得所有结果.但是在这种情况下,只有一个结果并且正在获取它.此外,如果我只执行一次第一个预准备语句,则不会发生错误.它仅在第一个语句执行两次时发生.它也只发生时PDO::ATTR_EMULATE_PREPARESfalse.

所以我的问题是,在这种情况下导致上述错误的原因是什么?它似乎与我执行的任何其他查询没有任何不同.

我已在两台Ubuntu 13.10服务器,Debian和CentOS上测试了这一点,并且所有服务器都使用默认包产生相同的错误.

编辑:

要回答Ryan Vincent的评论,我是一个完整的mysqli noob,但我相信我下面的内容大致相当于上面的例子.如果我错了,请纠正我.但是它不会产生任何错误,因此它似乎只是一个PDO错误:

$mysqli = new mysqli($host, $user, $pass, $dbname);
if ($mysqli->connect_errno) {
    die("Failed to …
Run Code Online (Sandbox Code Playgroud)

php mysql pdo prepared-statement unbuffered-queries

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

两个节点之间所有路径的速度非常快

我是python编码的新手,我正在寻找一种算法,可以快速找到一个非常大的图形的起始节点和结束节点之间的所有路径 - 比如一个有大约1000个节点和10,000个边缘的图形.从起始节点到结束节点实际存在的路径数很少 - 十个或更少.为了帮助提高问题的背景,考虑一个社交网络 - 如果我有1000个朋友,我想知道我的高中朋友有多少方式从大学连接到我的室友,我不关心我的事实高中最好的朋友与我所有的200名高中朋友联系在一起,因为那些路径从未通向我的室友.我想用这个python代码做的很快就是我的两个朋友之间存在的路径的子集,并且基本上摆脱了这两个节点周围存在的所有"噪音".

我试图实现一些代码示例,所有这些代码都适用于小而简单的图形.但是,当我尝试将它们纳入我的大图分析时,它们都需要很长时间才能发挥作用.

你们都有任何调查方法的建议(即已经在networkx中创建的东西,甚至是使用堆栈与递归的信息等等),要实现的代码示例,甚至是python之外的其他路径来追求?请记住,我是一个蟒蛇新手.

python graph nodes

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

.htaccess - 尝试强制https时"重定向太多"

我试图强制我的根域的子文件夹(/ bbb /)始终显示为https.我的.htaccess文件也处理页面的扩展.

我把.htaccess文件放在我的/bbb/文件夹中,但当我试图强制连接到https时,我得到"太多的重定向",没有它一切正常.

我的代码有什么问题?

Options +FollowSymLinks -MultiViews
Options +Indexes
AcceptPathInfo Off
RewriteEngine on
RewriteBase   /

ErrorDocument 404 https://example.co.uk/404page/404.html

#Force from http to https
RewriteCond %{SERVER_PORT} 80 
RewriteCond %{HTTP_HOST} !^bbb.example.co.uk/$
RewriteRule ^(.*)$ https://bbb.example.co.uk/$1 [R=301]

#take off index.html
 RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{REQUEST_URI} ^(.*/)index\.html$ [NC]
RewriteRule . http://www.%{HTTP_HOST}%1 [R=301,NE,L]

## hide .php extension
# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]

## To internally redirect /dir/foo to …
Run Code Online (Sandbox Code Playgroud)

.htaccess mod-rewrite redirect

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

PHP get_headers()报告的标头不同于CURL

怎么get_headers()可能返回与通过CURL获得它们不同的结果?这是我的代码:

header("Content-type: text/plain");
$url = 'http://www.foxbusiness.com/index.html';

echo "get_headers() headers:\n\n";
$headers = get_headers($url);
print_r($headers);

echo "\n\nCURL headers\n\n";
$curl = curl_init();
curl_setopt_array( $curl, array(
    CURLOPT_HEADER => true,
    CURLOPT_NOBODY => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_URL => $url ) );
$headers = explode( "\n", curl_exec( $curl ) );
curl_close( $curl );
print_r($headers);
Run Code Online (Sandbox Code Playgroud)

这是结果:

get_headers() headers:

Array
(
    [0] => HTTP/1.0 403 Forbidden
    [1] => Server: AkamaiGHost
    [2] => Mime-Version: 1.0
    [3] => Content-Type: text/html
    [4] => Content-Length: 283
    [5] => Expires: Fri, …
Run Code Online (Sandbox Code Playgroud)

php curl http-headers

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

消除不可能的选择

我试图以编程方式解决这个问题时遇到了一些麻烦.这不是我正在做的事情,但为了简化事情,我们说有一定数量的球和一定数量的人.每个人必须选择一个球,人们可能只限于他们可以选择的球类型.目标是确定人们在消除所有不可能的组合后必须选择哪些选项.

例1:

在一个简单的例子中,说我们有两个人,一个红球和一个绿球.人1可以选择任一球,但是人2只能选择绿球.这可以说明如下:

Person 1: RG
Person 2: G
Run Code Online (Sandbox Code Playgroud)

因为我们知道人2必须选择绿球,这意味着1人不能选择那个球,因此必须选择红球.所以这可以简化为:

Person 1: R
Person 2: G
Run Code Online (Sandbox Code Playgroud)

所以在这种情况下,我们确切地知道每个人会选择什么.

例2:

现在让我们添加一些复杂性.现在我们有4个人需要从2个红球,1个绿球和4个蓝球中选择.人1可以选择任何球,人2和3可以选择红色或绿色球,而人4必须选择红色球.所以我们有以下选择:

Person 1: RRGBBBB
Person 2: RRG
Person 3: RRG
Person 4: RR
Run Code Online (Sandbox Code Playgroud)

由于人4只有一种选择,我们知道该人必须选择一个红球.因此,我们可以从所有其他人中消除1个红球:

Person 1: RGBBBB
Person 2: RG
Person 3: RG
Person 4: RR
Run Code Online (Sandbox Code Playgroud)

然而,这是它变得非常棘手的地方.我们可以看到,第2和第3人必须选择一个红球和一个绿球,我们只是不知道哪一个会选择哪一个.但是,由于我们每个球只剩下1个,所以红色和绿色也可以作为选项从第1个人中删除:

Person 1: BBBB
Person 2: RG
Person 3: RG
Person 4: RR
Run Code Online (Sandbox Code Playgroud)

现在,我们可以使用以下选项从每个条目中删除重复项:

Person 1: B
Person 2: RG
Person 3: RG
Person 4: R
Run Code Online (Sandbox Code Playgroud)

我们知道人1和人4的选择,而人2和3可以选择红色和绿色.


为了解决这个问题,我所做的就是循环遍历所有人,首先如果人们只有一个球类型,从阵列中删除该人并将其放入结果数组中(因为我知道这是那个人必须选择的)然后如果存在,则从阵列中的每个其他人移除该球类型之一.

在此之后,在我看来,规则是:

如果有多$n个人拥有相同 …

php combinations combinatorics

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

RabbitMQ服务器中的连接在600秒后自动丢失

我正在使用amq的rabbitMQ服务器.

我遇到了一个棘手的问题.单独离开服务器大约10分钟后,连接丢失.

可能是什么导致了这个?

timeout rabbitmq

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

关于iptables中"-set-xmark"的一些问题

我有一条规则如下:

-A PREROUTING -d 10.228.20.15/32 -p tcp -m tcp --dport 80--tcp-flags FIN,SYN,RST,ACK SYN -j MARK --set-xmark 0x70/0xffffffff
Run Code Online (Sandbox Code Playgroud)

该man doc解释--set-xmark如下:

将掩码和XOR值给出的位清零到ctmark.

英语不是我的母语.任何人都可以帮助解释将什么值设置为ctmark?零出是什么意思?举一个例子将不胜感激.

linux iptables netfilter

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

MySQL,阅读这个EXPLAIN语句

我有一个查询,它开始引起我的应用程序的一些问题.我试图更好地理解这个EXPLAIN语句,以了解索引可能丢失的位置:

            +----+-------------+-------+--------+---------------+------------+---------+-------------------------------+------+---------------------------------+
            | id | select_type | table | type   | possible_keys | key        | key_len | ref                           | rows | Extra                           |
            +----+-------------+-------+--------+---------------+------------+---------+-------------------------------+------+---------------------------------+
            |  1 | SIMPLE      | s     | ref    | client_id     | client_id  | 4       | const                         |  102 | Using temporary; Using filesort |
            |  1 | SIMPLE      | u     | eq_ref | PRIMARY       | PRIMARY    | 4       | www_foo_com.s.user_id         |    1 |                                 |
            |  1 | SIMPLE      | a     | ref    | session_id    | session_id …

mysql sql database database-design

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

“随机”盐与“独特”盐相比有什么好处?

我目前正在编写一个程序,其中一部分涉及安全地创建密码哈希以存储在数据库中,我遇到了phpass框架,这似乎是强烈推荐的。在 phpass 中,他们似乎不遗余力地生成尽可能真正随机的盐以用于散列(例如从 /dev/urandom 读取)。

我的问题是,与简单地使用相比,这样做有什么好处uniqid()?关键不是简单地确保用于散列的盐彼此不同而不是随机的吗?使用真正随机的盐实际上不会比使用独特的盐更糟糕,因为它可能会产生碰撞而 uniqid() 不会?

编辑:我的问题不是关于计算机环境中是否存在“真正的”随机性,所以也许我用词不当,但是我的问题更接近于“更多”随机盐是否比更多独特性有任何好处作为盐。

php security passwords hash phpass

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