小编fed*_*o-t的帖子

PHP中的多字节修剪?

显然没有mb_trimmb_*家庭,所以我想实现一个我自己.

我最近在php.net的评论中发现了这个正则表达式:

/(^\s+)|(\s+$)/u
Run Code Online (Sandbox Code Playgroud)

所以,我将通过以下方式实现它:

function multibyte_trim($str)
{
    if (!function_exists("mb_trim") || !extension_loaded("mbstring")) {
        return preg_replace("/(^\s+)|(\s+$)/u", "", $str);
    } else {
        return mb_trim($str);
    }
}
Run Code Online (Sandbox Code Playgroud)

正则表达式似乎对我来说是正确的,但我是正则表达式的极力菜鸟.这会有效地删除字符串开头/结尾的任何 Unicode空间吗?

php regex unicode multibyte mbstring

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

RegEx匹配比特币地址?

我正在尝试根据这些规范提出一个匹配比特币地址的正则表达式:

比特币地址或简称地址是27-34个字母数字字符的标识符,从数字1或3开始[...]

我认为它看起来像这样

/^[13][a-zA-Z0-9]{27,34}/
Run Code Online (Sandbox Code Playgroud)

事实是,我对正则表达式并不擅长,而且我没有找到一个单一的来源来确认这不会产生假阴性.

我在网上发现了一个^1[1-9A-Za-z][^OIl]{20,40},但我甚至不知道这个[^OIl]部分是什么意思,它似乎与3比特币地址不匹配.

regex bitcoin

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

PHP中适当的会话劫持预防

我知道这个话题已经讨论了很多,但我还有一些具体的问题仍未得到解答.例如:

// **PREVENTING SESSION HIJACKING**
// Prevents javascript XSS attacks aimed to steal the session ID
ini_set('session.cookie_httponly', 1);

// Adds entropy into the randomization of the session ID, as PHP's random number
// generator has some known flaws
ini_set('session.entropy_file', '/dev/urandom');

// Uses a strong hash
ini_set('session.hash_function', 'whirlpool');
Run Code Online (Sandbox Code Playgroud)
// **PREVENTING SESSION FIXATION**
// Session ID cannot be passed through URLs
ini_set('session.use_only_cookies', 1);

// Uses a secure connection (HTTPS) if possible
ini_set('session.cookie_secure', 1);
Run Code Online (Sandbox Code Playgroud)
session_start();

// If the user is already …
Run Code Online (Sandbox Code Playgroud)

php security session sessionid session-hijacking

22
推荐指数
1
解决办法
8912
查看次数

什么时候使用hr元素在语义上是正确的?

HTML5基准说,

hr元素表示段落级别的主题中断,例如故事中的场景变化,或者到参考书的一部分内的另一个主题的过渡.

这种描述对我来说还不够描述.我使用hrHTML文档中的元素作为分隔内容的方法.它是否正确?

任何人都可以举几个例子来说明何时使用它(除了显示的例子)以及何时使用CSS样式代替?

html css html5 semantic-markup

21
推荐指数
2
解决办法
8362
查看次数

FILTER_VALIDATE_URL太严格了吗?

在PHP中,filter_var('www.example.com', FILTER_VALIDATE_URL)返回false.它是否正确?是不是www.example.com有效的URL,或者需要在URL中明确说明协议(http://,ftp://等)是否正式正确?

php url

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

在MS-DOS中使用哪种字体?

有谁知道Windows控制台/ MS-DOS使用哪种字体?

fonts truetype font-face windows-console

16
推荐指数
3
解决办法
8万
查看次数

用PHP进行Web抓取

我正在寻找一种方法,用PHP中的用户提供的URL进行另一个页面的小预览.

我只想检索页面的标题,图像(如网站的标识)和一些文字或描述(如果可用).没有任何外部库/类,有没有简单的方法可以做到这一点?谢谢

到目前为止,我已经尝试使用DOCDocument类,加载HTML并在屏幕上显示它,但我不认为这是正确的方法

html php curl html-parsing web-scraping

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

检测文本中的电子邮件

我正在尝试创建一个函数,将给定字符串中每个出现的纯文本电子邮件地址转换为它的html化版本.

假设我有以下代码,htmlizeEmails我正在寻找的功能在哪里:

$str = "Send me an email to bob@example.com.";
echo htmlizeEmails($str); // Echoes "Send me an email to <a href="mailto:bob@example.com">bob@example.com</a>."
Run Code Online (Sandbox Code Playgroud)

如果可能,我希望此功能使用该filter_var功能来检查电子邮件是否有效.

有谁知道如何做到这一点?谢谢!

编辑:

感谢您的答案,我用令人震惊的正则表达式匹配潜在的电子邮件地址,然后,只有filter_var验证它,它就会被取代.

function htmlizeEmails($text)
    preg_match_all('/([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6})/', $text, $potentialEmails, PREG_SET_ORDER);

    $potentialEmailsCount = count($potentialEmails);
    for ($i = 0; $i < $potentialEmailsCount; $i++) {
        if (filter_var($potentialEmails[$i][0], FILTER_VALIDATE_EMAIL)) {
            $text = str_replace($potentialEmails[$i][0], '<a href="mailto:' . $potentialEmails[$i][0] .'">' . $potentialEmails[$i][0] .'</a>', $text);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

php regex email preg-replace preg-match

15
推荐指数
2
解决办法
7945
查看次数

Modernizr vs HTML shiv

如果我只需要旧的浏览器来识别HTML5标签,我应该使用它,Modernizr还是流行的HTML5 shiv?而且,如果我不需要设置此HTML5标签的样式,我是否需要浏览器才能识别它们?或者只在向这些标签添加CSS时才需要?

谢谢!

javascript browser html5 internet-explorer

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

MySQL活动有多贵?

在我的网络应用程序中,我使用了两个定期事件,"清理"数据库中的一个表,每15分钟左右执行一次.

我的问题是,这会导致未来的性能问题吗?因为我已经读过某个地方 - 我不记得确切地说 - MySQL事件应该安排在一个月左右运行一次.事实是,同样的事件使表格大小相当缩小(因为它们删除了超过15分钟的记录),这可能会补偿执行频率,对吗?

另外,如果以相同的频率调用它们,有一个大的MySQL事件或许多小事件会更好吗?

mysql sql database schedule crontab

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