小编for*_*rin的帖子

尽管HTTP错误,使file_get_contents()返回服务器响应

如果使用file_get_contents()连接到Facebook,

$response = file_get_contents("https://graph.facebook.com/...?access_token=***");
echo "Response: ($response)\n";
Run Code Online (Sandbox Code Playgroud)

并且服务器返回非正常HTTP状态,PHP提供一般错误响应,并禁止响应.返回的身体是空的.

file_get_contents(...): failed to open stream: HTTP/1.0 400 Bad Request
Response: ()
Run Code Online (Sandbox Code Playgroud)

但是如果我们使用cURL,我们会看到Facebook实际上返回了一个有用的响应主体:

{"error":{"message":"An active access...","type":"OAuthException","code":2500}}
Run Code Online (Sandbox Code Playgroud)

无论HTTP错误如何,如何使file_get_contents()返回响应主体?

php http facebook-graph-api

3
推荐指数
1
解决办法
2204
查看次数

在OS X中安装捆绑PHP的扩展

我需要在OS X 10.9上从PHP连接到SQL Server,所以我做了:

brew install php55
brew install php55-pdo-dblib
Run Code Online (Sandbox Code Playgroud)

这很好用,但我想知道:是否有可能在OS X 的捆绑版本的PHP中安装dblib扩展(或任何其他PHP扩展),而无需编译全新的PHP版本?

你在哪里找到必要的下载,你通常做什么来添加PHP的扩展?在研究该主题后,这一点令人惊讶地不清楚.

php macos pdo php-extension

3
推荐指数
1
解决办法
2122
查看次数

可空列何时会严重影响性能?

据我了解,应尽可能避免数据库中的可为空列。

但是,在哪些特定情况下,可空列实际上会导致性能显着下降?

换句话说,null 什么时候会真正损害性能?(而不是当它可以忽略不计,并且根本不重要时)。

我这样问是为了知道它何时以及如何真正产生影响。

mysql

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

Homebrew 升级后 MySQL 服务器消失了

我刚刚brew upgrade对 PHP 7.2.8 和 MySQL 8.0.12做了一个。在此之后,尝试从 PHP 脚本(来自 Bash)连接到 MySQL 会在 10 秒(默认 MySQL 超时值)后超时。

new PDO("mysql:host=localhost;dbname=foo;charset=utf8", "user", "pass");

[2006] MySQL server has gone away
Run Code Online (Sandbox Code Playgroud)

我的环境中的一切似乎都很正常。我的设置中没有更改任何其他内容。从 Bash 连接到 MySQL 工作正常。如何从 PHP 重新获得 MySQL 访问权限?

$ php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/etc/php/7.2
Loaded Configuration File => /usr/local/etc/php/7.2/php.ini

$ tail /usr/local/etc/php/7.2/php.ini
mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket = /tmp/mysql.sock

$ ls /tmp/mysql*
srwxrwxrwx  0 /tmp/mysql.sock
-rw-------  5 /tmp/mysql.sock.lock
srwxrwxrwx  0 /tmp/mysqlx.sock
-rw-------  6 /tmp/mysqlx.sock.lock

$ mysql …
Run Code Online (Sandbox Code Playgroud)

php mysql homebrew

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

将随机索引挑选到已排序的数组中

假设我有一个排序的值数组:

int n=4; // always lower or equal than number of unique values in array
int i[256] = {};
int v = {1 1 2 4 5 5 5 5 5 7 7 9 9 11 11 13}
// EX 1        ^         ^       ^       ^
// EX 2    ^                 ^         ^ ^
// EX 3    ^ ^           ^               ^
Run Code Online (Sandbox Code Playgroud)

我想生成n个随机索引值i[0] ... i[n-1],以便:

  1. v[i[0]] ... v[i[n-1]]指向一个唯一的数字(即不得指向5两次)
  2. 每个数字必须是同类中最右边的(即必须指向最后 5个)
  3. 应始终包括最终数字的索引(在这种情况下为13).

到目前为止我尝试过的:

  1. 获取索引到最后一个唯一值 …

c arrays random

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

为什么"加入或"慢两个"加入"?

以下查询很快:

SELECT *
FROM   apple
       LEFT JOIN banana b1
              ON apple.id = b1.one
       LEFT JOIN banana b2
              ON apple.id = b2.two
WHERE  b1.id IS NULL
       AND b2.is IS NULL  
Run Code Online (Sandbox Code Playgroud)

虽然以下是缓慢的:

SELECT *
FROM   apple
       LEFT JOIN banana
              ON apple.id = banana.one
                  OR apple.id = banana.two
WHERE  banana.id IS NULL  
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释为什么用"或"做一个"join on"语句比加入两个表要慢得多?

mysql

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

通过评估元素来减少列表列表

如何将列表列表减少为仅包含符合特定条件的值?我已经看到了类似的问题,又看了看Filter,Reduce等,但似乎无法做什么工作.

> h = list(A=c(1, 2, 3), B=c(2, 3, 4), C=c(0, 1, 2))
> h
$A
[1] 1 2 3

$B
[1] 2 3 4

$C
[1] 0 1 2 
Run Code Online (Sandbox Code Playgroud)

期望的输出:

> MagicFunction(h, element >= 3)
$A
[1] 3

$B
[1] 3 4
Run Code Online (Sandbox Code Playgroud)

r

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

标签 统计

mysql ×3

php ×3

arrays ×1

c ×1

facebook-graph-api ×1

homebrew ×1

http ×1

macos ×1

pdo ×1

php-extension ×1

r ×1

random ×1