小编Ali*_*xel的帖子

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

使用cURL句柄作为数组键

我正在使用curl_multi函数来请求多个URL并在完成时处理它们.当一个连接完成时,我真正拥有的是cURL句柄(和相关数据)curl_multi_info_read().

URL来自作业队列,一旦处理,我需要从队列中删除作业.我不想依靠URL识别工作(有不应该是重复的URL,但如果有什么).

到目前为止我已经解决的解决方案是使用cURL句柄作为指向jobid的数组键.形成我能说的,当被视为字符串时,句柄就像:

"Resource id #1"
Run Code Online (Sandbox Code Playgroud)

这种接缝对我而言是相当独特的.基本代码是:

$ch = curl_init($job->getUrl());
$handles[$ch] = $job;
//then later
$done = curl_multi_info_read($master);
$handles[$done['handle']]->delete();
curl_multi_remove_handle($master, $done['handle']);
Run Code Online (Sandbox Code Playgroud)

以这种方式使用cURL手柄是否安全?

或者是否有更好的方法将cURL句柄映射到创建它们的作业?

php curl curl-multi

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

php mb_convert_case() 保留大写的单词

假设我有一个字符串“HET1200 文本字符串”,我需要将其更改为“HET1200 文本字符串”。编码将是 UTF-8。

我怎样才能做到这一点?目前,我使用mb_convert_case($string, MB_CASE_TITLE, "UTF-8");但将“HET1200”更改为“Het1200。

我可以指定一个例外,但它不会是详尽无遗的。所以我宁愿所有的大写单词都保持大写。

谢谢 :)

php string utf-8 mbstring

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

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

四舍五入到最近的结尾数字

我有以下函数将数字四舍五入到最接近的数字,以$ nearest的数字结尾,我想知道是否有更优雅的方式做同样的事情.

/**
 * Rounds the number to the nearest digit(s).
 *
 * @param int $number
 * @param int $nearest
 * @return int
 */

function roundNearest($number, $nearest, $type = null)
{
    $result = abs(intval($number));
    $nearest = abs(intval($nearest));

    if ($result <= $nearest)
    {
        $result = $nearest;
    }

    else
    {
        $ceil = $nearest - substr($result, strlen($result) - strlen($nearest));
        $floor = $nearest - substr($result, strlen($result) - strlen($nearest)) - pow(10, strlen($nearest));

        switch ($type)
        {
            case 'ceil':
                $result += $ceil;
            break; …
Run Code Online (Sandbox Code Playgroud)

php math numbers rounding

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

PHP错误无法在写上下文中使用方法return> value

我在PHP类中收到此错误...

致命错误:无法在第35行的C:\ webserver\htdocs\friendproject2\includes\classes\User.class.php中的写入上下文中使用方法返回值

这是困扰的部分.

if(isset($this->session->get('user_id')) && $this->session->get('user_id') != ''){
    //run code
}
Run Code Online (Sandbox Code Playgroud)

这个代码在我的控制器中,是一个值尚未设置为$ this-> session-> get('user_id')然后它将返回false而不是Number.所以你可以看到我希望检查这个值是否为数字或者甚至没有设置.

任何帮助修复赞赏.

php class constants isset

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

MySql查找数据包含少于四个字符的所有行

我如何正确编写这个sql-english查询:

"SELECT zip FROM tblContacts WHERE [拉链中的字符数小于或等于4]".

谢谢.

mysql

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

无法解码JSON striplashed String?

有谁知道为什么会这样?

var_dump(json_decode(stripslashes(json_encode(array("O'Reiley"))))); // array(1) { [0]=> string(8) "O'Reiley" } 
var_dump(json_decode(stripslashes(json_encode(array("O\'Reiley"))))); // NULL
Run Code Online (Sandbox Code Playgroud)

'JSON函数是否完全使用?

php json

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

我应该如何在mysql_query函数中编写PHP $ _POST变量?

在访问我的数据库时,我让用户填写表单,并在目标页面中,在生成的MySQL查询中使用发布的值.

$query = mysql_query("SELECT pass FROM database WHERE user='$_POST[user]'");
Run Code Online (Sandbox Code Playgroud)

但是,由于某种原因,MySQL不喜欢我在命令中使用$ _POST变量,它只在我定义(例如)时才有效$user = $_POST['user'];,然后将$ user直接放在SQL命令中.

另一方面,我可以在INSERT语句中使用$ _POST值,其中不需要特定的列名:

$query = mysql_query("INSERT INTO database VALUES ('foo', 'bar', '$_POST[user]'");
Run Code Online (Sandbox Code Playgroud)

如果我尝试定义属性的INSERT语句(例如user='foo'),则会出现相同的问题.

我在SQL查询中做错了什么导致命令在运行时出错,但是使用格式化INSERT命令的特定方法?

希望,这不是"运气不好,看起来你必须分配所有发布的价值".嘿.

php mysql sql post sql-injection

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

PHP群发电子邮件工具(免费)

我正在寻找一个免费的PHP工具来发送批量电子邮件.

简单但有用的东西:"发送"地址,上传CSV文件(电子邮件,名称),上传HTML模板,插入纯文本版本和SENT!但必须使用大型列表.

我们已经拥有了自己的,但它变得越来越多,我们需要发送一个大规模的公告(7~8,000名收件人).我没有浪费时间尝试调试它,而是想到可能有一个开源解决方案,可以让我更快.

我知道电子邮件CAN-SPAM规则以及所有这些,不用担心.

我知道也有服务提供商致力于这一点,但对于这种情况,我们需要在内部做到这一点.

php email

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