小编Luk*_*een的帖子

从电话号码输入字段中提取号码 (PHP)

我有一个电话号码输入字段,允许用户以他们想要的任何格式添加电话号码(555-555-5555、(555) 555 - 5555 等)。

由于它只是一个电话号码字段,因此我可以忽略除字段中的数字之外的所有内容。

我目前正在使用以下代码。它提取了所有数字,但问题是它们没有按顺序排列 - 它的顺序是混乱的。

如何按照原始字符串中出现的顺序提取数字?

preg_match_all('/\d+/', $Phone, $matches);

$Phone = implode('', $matches[0]);
Run Code Online (Sandbox Code Playgroud)

编辑:它们实际上并不是来自该函数的混乱顺序 - 我将数字插入到 int(10) 数据库字段中,这导致了混乱。但是,下面的答案仍然是实现我的目标的更有效的方法。

php regex phone-number preg-match

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

在电子邮件中垂直旋转TEXT

我处于一种需要在电子邮件正文中以垂直顺序设置一些文本的情况下,

在此处输入图片说明

使用以下CSS,我可以在HTML中垂直设置文本,但不能在GMAIL电子邮件正文中设置相同的文本。

我的Gmail正文中的代码:

<div style=" width:50px; float:left; position:relative;padding-top:80px;transform: rotate(-90deg); -ms-transform: rotate(-90deg); -moz-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); -o-transform: rotate(-90deg);"> 
    <h1 id="Header" style="direction: rtl;font-family: Arial, Helvetica, sans-serif; font-size: 24px; font-weight: normal; color: #434242; white-space: nowrap; position:relative; height:auto; "> newsletter 1 </h1> 
</div>
Run Code Online (Sandbox Code Playgroud)

html html-email

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

订购if/else if语句的最快/最合适的方式

在PHP中,if/else if语句是否有最快/正确的排序方式?出于某种原因,在我的脑海中,我喜欢认为第一个if语句应该是预期的"最受欢迎"符合条件,然后是第二个等等.但是,它真的重要吗?如果第二个条件是最受欢迎的选择(意味着系统必须始终读取第一个条件),是否会影响速度或处理时间

例如:

if ("This is the most chosen condition" == $conditions)
{

}
else if ("This is the second most chosen condition" == $conditions)
{

}
else if ("This is the third most chosen condition" == $conditions)
{

}
Run Code Online (Sandbox Code Playgroud)

php benchmarking

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

删除除数字,字母x和加号(正则表达式,PHP)之外的所有内容

存在这个问题的许多变体,我尝试了一些生成器,但我似乎找不到与之匹配的正则表达式.假设我的电话号码看起来像"345-324-3243 X039"我想删除除数字,字母x和加号(显示在国际号码中)之外的所有内容.

这是我目前的非工作正则表达式和代码:

$phone = "345-324-3243 X039";
preg_replace('[^\d|x|\+]', '', $phone);
Run Code Online (Sandbox Code Playgroud)

我希望它出来"3453243243X039",但我得到"30234-2349".

php regex preg-replace

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

以编程方式在Facebox中打开div

使用Facebox的文档,我试图以编程方式弹出Facebox,Facebox内容是文档中div的内容.

问题是它没有打开那个内容 - 它打开了空白.怎么了?带有示例的完整代码包含在这个jsFiddle中:http://jsfiddle.net/N4B4v/1/

<div id="#TEST10" style="display: none;">
    HEYYYY!
    <br />
    <br />
    heyyyyy!
</div>

<div style="margin-bottom: 10px;">
    <a href="#" onclick="jQuery.facebox({ div: '#TEST10' }); return false;"><input type="checkbox" name="AgreeToRequirements" /></a>Open Facebox By Checking The Box
</div>
Run Code Online (Sandbox Code Playgroud)

javascript jquery facebox

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

Google Analytics(分析)指的是什么Safari版本?

由于这个问题,我能够找到Google Analytics(分析)所指的大多数Webkit(所有3位数Webkit)的Safari版本。但是,有些未在Wikipedia条目中列出。

这是Analytics(分析)向我显示的快照。

7534和6533 Webkit指的是Safari的哪个版本/操作系统?

1.  7534.48.3   45.50%  
2.  534.57.2    12.51%
3.  534.55.3    8.44%
4.  533.22.3    6.60%
5.  534.52.7    4.96%
6.  6533.18.5   4.95%
Run Code Online (Sandbox Code Playgroud)

safari google-analytics mobile-safari

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

同一页面上有多个jQuery插件实例?

我已经看过很多不同的jQuery插件样板,并阅读了许多不同的jQuery插件创作文章,包括官方文章.但是,从根本上说,我似乎仍然缺少一些东西!

我正在使用我在别处看到的混合代码和jQuery的官方创作指南.

从代码中可以看出,我正在做所有内容return this.each(function() { });.这包括我的私人职能.我认为这意味着对于每个.pluginName();被调用的代码,代码将被运行并绑定到该实例.例如,我在randID每个元素ID的末尾添加一个,这样如果创建了多个实例,则实例可以引用正确的元素.

我的问题是,当我在同一页面上有两个实例时,第二个实例的函数(如displayAvailableItems())正在使用第一个实例randID.

我假设有两件事是错误的:功能在错误的地方,而randID是一种识别元素的坏方法.如果我移动displayAvailableItems()到正上方retun this.each(function() { });,则availableItem变量不再可用.

这是我的代码的缩写版本:(pastebin)http://tny.cz/6d3d52a8

$.pluginName = {
     id: 'PluginName'
    ,version: '1.0'
,defaults: { // default settings
    foo: 'bar'
}
};

(function($) {
    //Attach this new method to jQuery
    $.fn.extend({ 

            pluginName: function(params) {
            //Merge default and user parameters
                    var params =  $.extend($.pluginName.defaults, params)
            ,otherGeneralVars = 'example'
        ;

        return this.each(function() {       
            var $t = $(this); …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-plugins

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

从 onclick 事件调用 jQuery 函数

由于一些奇怪的要求以及在我们的应用程序中实现 jQuery 的方式,我必须通过复选框 onclick 事件调用 jQuery 函数。

下面是通过 div ID 触发的函数的完美实现。但是,同样的代码在我的应用程序中不起作用。

在我的应用程序中,我使用的是 jQuery 1.7.1 版。我没有收到任何错误,该功能根本不会触发。我正在使用 Chrome 进行调试。当我尝试在 onclick 中调用它时,它会响应,但会返回undefined.

HTML

<div id="dialog-confirm" title="Select Options">
    <!--I need to call function in onclick event for checkbox below-->
    <input type="checkbox" id="chkall" /> Check/Uncheck
    <br /><br />

    <input type="checkbox" />Option 1<br />
    <input type="checkbox" />Option 2<br />
    <input type="checkbox" />Option 3<br />
    <input type="checkbox" />Option 4<br />
    <input type="checkbox" />Option 5<br />
    <input type="checkbox" />Option 6<br />
    <input type="checkbox" />Option 7
</div> …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

DOMDocument-> saveHTML()vs urlencode with commercial at symbol(@)

使用DOMDocument(),我正在替换a中的链接$message并添加一些东西,比如[@MERGEID].当我保存更改时$dom_document->saveHTML(),链接得到"排序"的url编码.[@MERGEID]成为%5B@MERGEID%5D.

稍后在我的代码中,我需要[@MERGEID]用ID 替换.所以我搜索urlencode('[@MERGEID]')- 但是,urlencode()将符号(@)的商业广告更改为%40,而saveHTML()则将其保留.所以没有比赛 - '%5B@MERGEID%5D' != '%5B%40MERGEID%5D'

现在,我知道可以运行str_replace('%40', '@', urlencode('[@MERGEID]'))以获得我在$ message中找到合并变量所需的内容.

我的问题是,DOMDocument使用什么RFC规范,为什么它与urlencode甚至rawurlencode不同?有什么我可以做的就是保存str_replace吗?

演示代码:

$message = '<a href="http://www.google.com?ref=abc" data-tag="thebottomlink">Google</a>';
$dom_document = new \DOMDocument();
libxml_use_internal_errors(true); //Supress content errors
$dom_document->loadHTML(mb_convert_encoding($message, 'HTML-ENTITIES', 'UTF-8'));       
$elements = $dom_document->getElementsByTagName('a');
foreach($elements as $element) {    
    $link = $element->getAttribute('href'); //http://www.google.com?ref=abc
    $tag = $element->getAttribute('data-tag'); //thebottomlink
    if ($link) {
        $newlink = 'http://www.example.com/click/[@MERGEID]?url=' . $link;
        if ($tag) {
            $newlink .= '&tag=' …
Run Code Online (Sandbox Code Playgroud)

php encode urlencode rfc domdocument

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

MySQL查询使用RAND()子查询条件

我有一个嵌套的子查询,用于选择AlbumID所选视频所在的随机数(视频可以在多个专辑中),然后外部查询会根据该查询返回视频和专辑信息AlbumID.

问题是查询返回混合结果; 有时它会从一张专辑中提供一些视频,有时它会提供来自多个专辑的视频,有时它不返回任何内容.

如果我指定特定AlbumID而不是子查询,则外部查询有效,并且子查询本身正确地返回1随机AlbumID.但放在一起,它给我的结果好坏参半.我错过了什么?为什么它会返回不同数量的行和多个专辑?

我已经用测试数据复制了这个问题,你可以在CREATE这里找到查询:http://pastebin.com/raw.php?i = e6HaaSGK

SELECT SQL:

SELECT  
    Videos_Demo.VideoID,
    VideosInAlbums_Demo.AlbumID
FROM 
    VideosInAlbums_Demo
    LEFT JOIN
        Videos_Demo
        ON Videos_Demo.VideoID = VideosInAlbums_Demo.VideoID
WHERE
    VideosInAlbums_Demo.AlbumID = (
                                    SELECT
                                        AlbumID
                                    FROM
                                        VideosInAlbums_Demo
                                    WHERE
                                        VideoID = '1'
                                    ORDER BY
                                        RAND()
                                    LIMIT 1
                                    )
Run Code Online (Sandbox Code Playgroud)

mysql subquery

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