小编Ian*_*ood的帖子

php - xpath问题中的上下文节点

有这个代码:

$products   =   $feed->_xpath->query( "//cf:vehicle"  );

foreach( $products as $product )
{
    echo $product->nodeName . ': ' . $product->getAttribute('code') . '<br />';
    $imgs   =   $feed->_xpath->query( "//cf:image" , $product );
    echo '&nbsp;Imgs: ' . $imgs->length . '<br />';
}
Run Code Online (Sandbox Code Playgroud)

在xmlfeed中找到的产品节点数是103 - 这是正确的.

然而,在当前节点上下文中查找定位图像的查询却没有这样做 - 它找到了116个图像节点,这是节点中图像节点的总数,因为它应该只选择当前产品中的图像(0之间)在大多数情况下为3)

任何指针都非常感激.

php xpath

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

mcrypt警告但仍解密数据

我在这堂课中有点奇怪:

<?php
namespace lib;

/**
 * Short description of Crypt
 *
 * @author xxxx
 * @package
 */
class Encryption
{
    /**
     * Short description of _ch
     * handle to the mcrypt resource
     *
     * @access private
     * @var $_ch
     */
    private $_ch;

    /**
     * Short description of __construct
     *
     * @access public
     * @author xxxx
     * @param
     * @return void
     */
    public function __construct( $keyData = NULL, $algorithm = \MCRYPT_RIJNDAEL_256, $mode = MCRYPT_MODE_ECB, $encLibPath = '', $modeDir = '' ) …
Run Code Online (Sandbox Code Playgroud)

php mcrypt

13
推荐指数
1
解决办法
937
查看次数

xpath - 获取所选集合的前10项

再次xml ..

我想从一个集合中选择一组子节点(用于分页目的).

$nodes = $xml->query(//parent
                        /child[sex = 'male' 
                               and position() >= 10 
                               and position() < 21]);
Run Code Online (Sandbox Code Playgroud)

如果我没有记错的话,那就是选择第10到第20个孩子的男孩.

我需要的是选择集合中的前10-20(或30-40)个男性...

我确定我是一个菜鸟,并且已经做过这个,但周五......

偷看

xml xpath position

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

jquery检测哪个按钮提交了表单

我有一个表格如下:

<form id="my-form" ...>
    ...
    <button type="submit" name="bttnsubmit" value="1">The first button</button>
    <button type="submit" name="bttnsubmit" value="2">The last button</button>
</form>
Run Code Online (Sandbox Code Playgroud)

我想用以下方法检测哪个触发了表单提交事件:

$('#my-form').submit(function(){
    //psuedo code
    if($('[name=bttnsubmit]').val() == 1) {
        ....
    }
});
Run Code Online (Sandbox Code Playgroud)

显然,选择器将始终返回它遇到的第一个bttnsubmit元素的值,所以我需要一些其他魔术选择器或过滤器或其他东西.

我已经看过$('[name=bttnsubmit][clicked=true]')吹捧但是我的尝试还没有奏效......

我当然可以求助,$('[name=bttnsubmit]').click()但我希望能够在表格提交活动中实现我的目标.

任何帮助/提示非常感谢.

jquery submit detect

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

Angular嵌套指令不在模型中显示新实体

开发一个角度应用程序,其中包含构建目录/嵌套树结构的功能......

我遇到的问题是节点的渲染并没有按预期工作.

只有当列表中已有产品节点并且可以创建部分但是尝试将子部分添加到已添加的部分时,才会呈现产品.部分和产品节点按预期插入到模型中 - 只是指令似乎不在原始模型中不存在的节点上运行.

相关代码:

HTML

<head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <script>document.write('<base href="' + document.location + '" />');</script>
    <link rel="stylesheet" href="style.css" />
    <script data-require="angular.js@1.3.x" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.3.7/angular.js" data-semver="1.3.7"></script>
    <script src="app.js"></script>
</head>

<body ng-controller="MainCtrl">
    <h1>Menu</h1>
    <button ng-click="addSection()">Add</button>
    <admin-sections sections="menu.sections"></admin-sections>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

JS

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.menu = {
    sections: [{
      name: "NEW SECTION 1",
      sections: [{
        name: "NEW SECTION",
        sections: [],
        products: [{
          "name": "Product",
          "price": "0.00"
        }]
      }],
      products: []
    }]
  };

  $scope.addSection = function() …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive

7
推荐指数
1
解决办法
830
查看次数

在git中将文件批量重命名为小写

我有一个完整的 git repo,我想将所有文件和目录重命名为小写。

在 Win7 上运行,我已将 igorecase = false 添加到 gitconfig 并通过 eclipse 重命名了一些文件。结果提交现在有两个文件,一个全小写,一个大写和小写。

删除“不需要的”文件会转储不理想的版本历史记录......

那么实现我的目标的潜在方法是什么 - 只考虑批处理/shell(不知道如何在那里做递归目录的东西,但希望有人会善良;))

收到大量感谢和拥抱的任何提示。

git renaming

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

mcrypt性能

我正在加密一些数据,并在系统之间的srcipt运行时间中获得截然不同的结果.

在win7机器上运行我的算法,加密在3-8千秒内完成.

linux上的相同代码(ubuntu11和debian6盒子)需要7到35个SECONDS.

这对我的需求来说并不是真的可以接受,并且想知道是否有任何善良的人可以放弃任何光明.

相关代码如下:

<?php

class MyEncryption
{
    public function __construct( $keyData )
    {
        $this->_encryptInit( $keyData );
    }

    private function _encryptInit( $keyData )
    {
        $this->ch = mcrypt_module_open('rijndael-256', '', MCRYPT_MODE_ECB , '');

        $vector  = mcrypt_create_iv (mcrypt_enc_get_iv_size( $this->ch ), MCRYPT_DEV_RANDOM );
        $keySize = mcrypt_enc_get_key_size( $this->ch );

        $key = substr( hash('SHA512', $keyData . $keySize ), 0, $keySize );

        mcrypt_generic_init( $this->ch, $key, $vector );
    }

    private function _encryptClose()
    {
        mcrypt_generic_deinit( $this->ch );
        mcrypt_module_close( $this->ch );
    }

    public function encryptData( $data )
    {
        $safeData …
Run Code Online (Sandbox Code Playgroud)

php linux mcrypt

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

json模式,用于验证具有anyOf和oneOf要求的对象数组

我试图定义一个json模式来限制数组中包含的对象的属性.

到目前为止我所拥有的是:

{
    "title":"myCollection",
    "properties":{
        "things":{
            "type":"array",
            "items":[{
                "title":"thingObj",
                "type":"object",
                "properties":{
                    "name":{
                        "type":"string"
                    },
                    "code":{
                        "type":"string"
                    },
                    "type":{
                         "type":"string",
                         "enum":["dog","cat"]
                    },
                    "rate":{
                        "type":"number"
                    },
                    "value":{
                        "type":"number"
                    }
                },
                "anyOf":[{
                    "properties":{
                        "name":{
                            "type":"string"
                        }
                    },"required":["name"]
                },{
                    "properties":{
                        "code":{
                            "type":"string"
                        }
                    },"required":["code"]
                },{
                    "properties":{
                        "type":{
                            "type":"string",
                            "enum":["new","existing"]
                        }
                    },"required":["type"]
                }],
                "oneOf":[{
                    "properties":{
                        "rate":{
                            "type":"number"
                        }
                    },
                    "required":["rate"]
                },{
                   "properties":{
                       "value":{
                            "type":"number"
                       }
                   },
                   "required":["value"]
                }],
                "additionalProperties":false
            }]
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在给出以下jsonobj:

{
    "things": [
        {
            "name": "tabby", 
            "code": "meeow", 
            "type": "cat", 
            "value": …
Run Code Online (Sandbox Code Playgroud)

validation json jsonschema

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

使用mcrypt或GnuPG存储信用卡详细信息

我要求存储信用卡详细信息(不存储不是一种选择).

使用mcrypt和mcrypt_dev_random生成init_vector需要不同的年龄来加密/解密,但似乎是最"安全"的选项.mcrypt_dev_urandom更快,但不适合长期存储 - 正如我读过的那样.

将GnuPG视为可能的替代方案,并希望在可能的情况下对这些提出意见/提出意见.

php encryption mcrypt

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

php fopen返回false但文件是可读/可写的

有一个可读写的文件,但fopen返回false ...

if(is_readable($file)) echo 'readable ';
if(is_writable($file)) echo 'writable ';
$fp = fopen($file, 'a+');
var_dump($fp);
Run Code Online (Sandbox Code Playgroud)

结果是

readable writable bool(false)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

确定它必须是权限,但在文件上尝试777具有相同的结果.

php

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

防止 json_encode 添加转义字符

有没有防止 json_encode 添加转义字符的解决方案?我正在从 ajax 请求返回一个 json obj。

这是我目前拥有的:

foreach ($files as $file)
{
    $inf    =   getimagesize( $file );

    $farr[] = array (
                    "imgurl"    =>  "/".str_replace( "\\" , "/" , str_replace( DOCROOT , "" , $file ) ) ,
                    "width"     =>  $inf[0] ,
                    "height"    =>  $inf[1]
                    );
}
$t  =   json_encode( $farr );
Run Code Online (Sandbox Code Playgroud)

它提供:

[
{\"imgurl\":\"\\\/_assets\\\/portfolio\\\/96\\\/full.png\",\"width\":580,\"height\":384},
{\"imgurl\":\"\\\/_assets\\\/portfolio\\\/95\\\/full.png\",\"width\":580,\"height\":452},
{\"imgurl\":\"\\\/_assets\\\/portfolio\\\/94\\\/full.png\",\"width\":580,\"height\":384}
]
Run Code Online (Sandbox Code Playgroud)

但是我需要:

[
{imgurl:"/_assets/portfolio/96/full.png",width:580,height:384},
{imgurl:"/_assets/portfolio/95/full.png",width:580,height:452},
{imgurl:"/_assets/portfolio/94/full.png",width:580,height:384}
]
Run Code Online (Sandbox Code Playgroud)

引用 imgurl 宽度和高度索引会导致我的 javascript 的其余部分中断

运气不好,所以非常欢迎任何提示......

php ajax jquery

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

mysql utf8编码和唯一键

我正在向用户表(来自许多站点的许多用户)输入数据:
myisam default collation latin1_swedish....

将该数据导入到 innodb table utf8_general

我已经在username,site_id组合上放置了一个唯一的密钥,但这对于同一站点的2个用户来说是失败的:

user 1    dranfog,
user 2    drånfog
Run Code Online (Sandbox Code Playgroud)

如果我跑:

SELECT IF('å' = 'a', 'yep', 'nope');
Run Code Online (Sandbox Code Playgroud)

直接在目标数据库上使用utf8编码,我得到'yep'.

任何解决此问题的提示都非常受欢迎.我的印象是utf8会将这些视为不同的字符,但似乎并非如此.

mysql unicode collation utf-8 unique-index

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

Angular ng-if仍然运行

试图找出ng-if.为什么要执行警报功能?谢谢

<div ng-if="false">
    <script> alert("a"); </script>
</div>
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-ng-if

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