小编And*_* SK的帖子

32位服务器上的PHP json_decode

我正在写一个Twitter mashup服务.当我收到json数据时,一些twit id大于2147483647(这是32位服务器上允许的最大整数).

我提出了一个有效的解决方案,即将整数转换为字符串; 这样,json_decode()函数在尝试生成数组时不会有任何问题.

这是我需要实现的:

之前(原始JSON数据)

[{"name":"john","id":5932725006},{"name":"max","id":4953467146}]
Run Code Online (Sandbox Code Playgroud)

之后(解决方案)

[{"name":"john","id":"5932725006"},{"name":"max","id":"4953467146"}]
Run Code Online (Sandbox Code Playgroud)

我正在考虑preg_match实现,但我不知道如何做到防弹.任何帮助都感激不尽.

php json 32-bit

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

检索随机项时MySQL与PHP

哪个更有效(管理超过100K记录时):

A. Mysql

SELECT * FROM user ORDER BY RAND();
Run Code Online (Sandbox Code Playgroud)

当然,之后我已经拥有该记录的所有字段.

B. PHP

使用memcached让$ cache_array保存"SELECT id_user FROM user ORDER BY id_user"中的所有数据1小时左右......然后:

$ id = array_rand($ cache_array);

当然,之后我必须通过以下方式进行MYSQL调用:

SELECT * FROM user WHERE id_user = $id;
Run Code Online (Sandbox Code Playgroud)

所以...哪个更有效率?A还是B

php mysql

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

Firebase Cloud Messaging的getToken()仅在我省略usePublicVapidKey方法时才起作用,为什么?

我在实施Firebase for Firebase Cloud Messaging(FCM)时遇到一个特定问题:

如您在下面的代码中看到的,//messaging.usePublicVapidKey("<MY VAPID KEY IN HERE>");当前已注释。VAPID密钥是通过以下命令获得的:web-push generate-vapid-keys在服务器的终端中。如果取消注释此行,则在调用notification_permission()以下命令时会在控制台中收到此错误:

这是我当前的index.html文件:

<script src="https://www.gstatic.com/firebasejs/4.12.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/4.12.1/firebase-messaging.js"></script>
<script>
var config = {
    apiKey: "<MY FIREBASE API KEY>",
    authDomain: "<MY FIREBASE PROJECT ID>.firebaseapp.com",
    databaseURL: "https://<MY FIREBASE PROJECT ID>.firebaseio.com",
    projectId: "<MY FIREBASE PROJECT ID>",
    storageBucket: "<MY FIREBASE PROJECT ID>.appspot.com",
    messagingSenderId: "<MY FIREBASE SENDER ID?>"
};
firebase.initializeApp(config);

//messaging app
const messaging = firebase.messaging();

//vapid …
Run Code Online (Sandbox Code Playgroud)

javascript firebase firebase-cloud-messaging vapid

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

阻止 htaccess 中的特定扩展

我有一个包含以下文件的目录:

/files/archive.01.json
/files/archive.02.json
/files/archive.03.json
/files/hello.php
Run Code Online (Sandbox Code Playgroud)

我需要 .htaccess 来阻止对该目录中所有 .json 文件的访问。有任何想法吗?

apache .htaccess

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

系统时间不同于apache时间戳 - ?

我在开发服务器上.当我在PHP中这样做:

echo date('r',time());
Run Code Online (Sandbox Code Playgroud)

回复:星期二,2010年6月1日18:10:32 -0400

但是,我的电脑时间是17:10:32(即格林威治标准时间-5).我在哪里配置我的apache/php来改变这个设置?我已经查看了php.ini和httpd.conf.

谢谢

php apache timezone

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

在URL和.htaccess中使用空格

我为我的城市写了一个本地名称/电话/地址搜索引擎.

用户必须能够通过访问以下任一URL快速访问结果:

  1. 按号码搜索
  2. 按姓氏搜索
  3. 按姓氏和名字搜索

这是我目前的.htaccess配置:

# Smart links
RewriteRule ^([0-9]+)$ /html/index.php?phone=$1 [QSA,L]
RewriteRule ^([A-Za-z-]+)$ /html/index.php?lastname=$1 [QSA,L]
RewriteRule ^([A-Za-z-]+)/([A-Za-z-]+)$ /html/index.php?lastname=$1&name=$2 [QSA,L]
Run Code Online (Sandbox Code Playgroud)

这非常有效,除非用户在姓氏和/或名字中包含空格.此外,搜索名称时不能使用任何数字.

关于如何在网址中留出空格的任何想法?谢谢!

.htaccess url-rewriting

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

PDO准备语句带有可选参数

我是PDO的新手,目前正在开发返回搜索结果的API调用.如果搜索查询有2个可选参数,如何设置准备语句?

$app->get('/get/search', function () {
    $sql = 'SELECT * FROM user WHERE name LIKE :name AND city = :city AND gender = :gender';
    try {
        $stmt = cnn()->prepare($sql);
        $stmt->bindParam(':name', '%'.$_GET['name'].'%', PDO::PARAM_STR);
        $stmt->bindParam(':city', '%'.$_GET['city'].'%', PDO::PARAM_STR);
        $stmt->bindParam(':gender', $_GET['gender'], PDO::PARAM_INT);
        $stmt->execute();
        if($data = $stmt->fetchAll()) {
            echo json_encode($data);
        } else {
            echo json_encode(array('error' => 'no records found');
        }
    } catch(PDOException $e) {
        echo json_encode(array('error' => $e->getMessage()));
    }
}
Run Code Online (Sandbox Code Playgroud)

这里的问题是$ _GET ['city']$ _GET ['gender']都是可选的.如果我尝试运行上面的代码,它将假设任何空变量也应匹配列中的空值; 另一方面,如果我做这样的事情:

if($_GET['gender']) $stmt->bindParam(':gender', $_GET['gender'], PDO::PARAM_INT);
Run Code Online (Sandbox Code Playgroud)

...它将返回此错误:"SQLSTATE …

php mysql pdo prepared-statement

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

为什么在 Twitter 中发布链接时 twitter:image 不能正常工作?

这是我在里面的当前推特卡片数据 <head>

<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@tradukka">
<meta name="twitter:title" content="Currency exchange: United States Dollar (USD) - Argentine Peso (ARS)">
<meta name="twitter:description" content="Currencies exchange updated in real time: United States Dollar (USD) - Argentine Peso (ARS) / 1 USD...">
<meta name="twitter:image" content="http://tradukka.com/meta/359ac65be829e896c12a3126fa9c71d0.jpg">
<meta name="twitter:image:width" content="750">
<meta name="twitter:image:height" content="370">
<meta name="twitter:url" content="http://tradukka.com/currency/usd/ars">
Run Code Online (Sandbox Code Playgroud)

如果我发送带有该链接的推文,则推文中会显示所有信息,图片除外:

在此处输入图片说明

我也尝试使用卡验证器

在此处输入图片说明

...它获取除图像之外的所有内容。

另外,我也已经尝试过使用twitter:image:src。该域已列入白名单。关于为什么图像没有显示在推文中的任何想法?

twitter meta-tags twitter-card

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

使用 MySQL 中的附加列过滤器从 Information Schema 获取行数

我正在尝试从 MySQL InnoDB 表中获取一些统计信息。为了获得更快的结果,我正在使用:

SELECT TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = "botonera" AND TABLE_NAME = "log";
Run Code Online (Sandbox Code Playgroud)

它工作正常,但我还需要在这些结果中结合特定的过滤器:

WHERE log.id_cat = 1
Run Code Online (Sandbox Code Playgroud)

如何将 INFORMATION_SCHEMA 结果与相关表内的特定列过滤器相结合?谢谢。

mysql innodb count information-schema

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

Javascript split()在IE中不起作用

让我们说我有一个textarea与此文本:

  1. 第一行一些文字.
  2. 第二行,其他文字.下一行将是空的.
  3. (空行)
  4. (空行)
  5. 最后一行在这里

如您所见,第3行和第4行为空(\n).我需要获得精确的线条结构(也有空行)并将其转换为数组.每一行都是数组的一个元素.这是我目前的代码:

var lines = $('#q').val().split(/\n/);
alert(lines.length); //using alert() because IE doesn't support console.log()
var texts = [];
for(i = 0; i < lines.length; i++) {
    texts.push($.trim(encodeURIComponent(lines[i])));
}
Run Code Online (Sandbox Code Playgroud)

除了IE之外,它适用于所有浏览器.由于某种原因,split()函数忽略IE中的空行(3和4).因此,它们永远不会传递到数组中:s

解决方案通过Squeegy在评论

替换split(/\n/)split("\n")- 该死的IE!

javascript jquery internet-explorer split

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