小编Ann*_*rom的帖子

在Git中查看子目录?

是否可以在Git中检出存储库的子目录?

想象一下,我正在设置一个新的WordPress安装.我将为我的插件和主题自定义创建两个新目录:

  • wordpress/wp-content/plugins/myplugins/
  • wordpress/wp-content/themes/mytheme/

我想通过Git维护这些目录.在Subversion中,我将通过拥有trunk/myplugins/trunk/mytheme/目录并检查子目录来实现这一目标.Git是否有办法使用单个存储库完成相同的任务?

我可能只是在一些Git范例中错过了这条船,因为很长一段时间的SVN用户很少接触Git.

编辑: 存储不同内容的多个分支是处理此问题的有趣方式.

git sparse-checkout

154
推荐指数
5
解决办法
12万
查看次数

保护API:SSL和HTTP基本身份验证与签名

在为我们的网络应用设计API时,我们将使用其子域作为"用户名"并生成API密钥/共享密钥.首先,可以使用子域作为用户名吗?我没有看到生成另一个密钥的好处.

不同的API似乎做两件事之一:

  1. 使用SSL的HTTP基本身份验证

在每个请求中,用户名都设置为子域和API密钥的密码.由于我们使用SSL,因此这应该是安全的欺骗.

着名的API:Google Checkout,Freshbooks,GitHub,Zendesk

  1. 使用共享密钥创建请求的签名

通常通过对键/值对进行排序并使用具有共享密钥的HMAC-SHA1来生成签名来实现.然后,签名随请求一起发送,并在另一端验证.

着名的API:Google Checkout,亚马逊AWS

PS:毫无疑问,Google Checkout支持两者

编辑:只需阅读OAuth 2正在删除签名,转而通过SSL发送用户名/密码.

任何人都有关于选择什么的意见:SSL vs Signature?

security authentication api rest digital-signature

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

DOM解析器,允许HTML5样式的</ in <script>标记

更新 :( html5lib问题的底部)似乎接近,我只需要提高我对它如何使用的理解.

我正在尝试为PHP 5.3找到兼容HTML5的DOM解析器.特别是,我需要在脚本标记中访问以下类似HTML的CDATA:

<script type="text/x-jquery-tmpl" id="foo">
    <table><tr><td>${name}</td></tr></table>
</script>
Run Code Online (Sandbox Code Playgroud)

大多数解析器都会过早地解析,因为HTML 4.01 在标记</内部找到ETAGO()时会结束脚本标记解析<script>.但是,HTML5 允许</之前</script>.到目前为止,我尝试过的所有解析器都失败了,或者它们的文档记录很差,以至于我还没弄清楚它们是否有效.

我的要求:

  1. 真正的解析器,而不是正则表达式.
  2. 能够加载整页或HTML片段.
  3. 能够将脚本内容拉回,通过标签的id属性进行选择.

输入:

<script id="foo"><td>bar</td></script>
Run Code Online (Sandbox Code Playgroud)

输出失败的示例(无关闭</td>):

<script id="foo"><td>bar</script>
Run Code Online (Sandbox Code Playgroud)

一些解析器及其结果:


DOMDocument(失败)

资源:

<?php

header('Content-type: text/plain');
$d = new DOMDocument;
$d->loadHTML('<script id="foo"><td>bar</td></script>');
echo $d->saveHTML();
Run Code Online (Sandbox Code Playgroud)

输出:

Warning: DOMDocument::loadHTML(): Unexpected end tag : td in Entity, line: 1 in /home/adam/public_html/2010/10/26/dom.php on line 5
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><head><script id="foo"><td>bar</script></head></html> …
Run Code Online (Sandbox Code Playgroud)

php html5 dom

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

在PHP中识别开发与生产服务器

我每天使用两个应用程序服务器:一个开发,一个生产.来自不同开发人员的各种应用程序都存在于这些盒子上,以及一些通过cron运行的脚本.目前,我正在使用httpd 的-D标志,以便我可以在代码中识别我的生产服务器,即.isset($_SERVER['DEV']).不幸的是,这对于从命令行运行的脚本不起作用,因为它们不在Apache的保护伞下.

从本质上讲,我想要一种清晰,简单的方法来识别每行代码可用的开发与生产.

我已经排除了:

  • auto_prepend_file - 我们已经在某些应用程序中使用此指令,并且您不能有多个自动重新上载.

我目前正在探索的内容:

  • 自定义扩展 - 我确定创建一个新的扩展,只定义一个新的常量(可能受ini设置的影响)不会是世界上最难的事情,但我没有这方面的经验.

那么,有什么技巧可以识别不涉及将代码注入每个脚本或应用程序的dev/prod?

php

24
推荐指数
2
解决办法
7657
查看次数

为什么sprintf()输出什么?

我之前从未使用过这些函数,但在阅读了很多关于sprintf()之后,我决定知道它.

所以我继续做下面的事情.

function currentDateTime() {
  list($micro, $Unixtime) = explode(" ",microtime());
  $sec= $micro + date("s", $Unixtime);
  $sec = mb_ereg_replace(sprintf('%d', $sec), "", ($micro + date("s", $Unixtime)));
  return date("Y-m-d H:i:s", $Unixtime).$sec;
}

sprintf(currentDateTime());
Run Code Online (Sandbox Code Playgroud)

它什么都不打印.另一方面使用printf()函数:

printf(currentDateTime());
Run Code Online (Sandbox Code Playgroud)

它打印结果就好了.那么这两个函数之间的区别是什么?如何正确使用sprintf()函数?

php printf

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

如何在PHP中使用setInterval?

我想问一下,如何在一段时间后一次又一次地使用php函数,就像Javascript中的setInterval一样.我们设置时间,直到脚本中止或关闭为止.

的index.php

<?
$Wall = new Wall_Updates();
$updatesarray=$Wall->Updates();
foreach($updatesarray as $data)
{
    $likes=$data['likes'];
    ?>
    <div id="likes"><?php echo $likes; ?></div>
    <?
}
?>
Run Code Online (Sandbox Code Playgroud)

而Wall_Updates()函数在FUNCTION.PHP中定义

<?php

class Wall_Updates {    
    public function Updates() {
        $myname=$_COOKIE['usename'];
        $query=mysql_query("SELECT * FROM posts WHERE name='$myname'");
        while($row=mysql_fetch_array($query))
            $data[]=$row;
        return $data;
    }
}
?>
Run Code Online (Sandbox Code Playgroud)

我希望这个Wall_Updates()函数一次又一次地从mysql中获取数据.所以,它将被更新.

php

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

PHP:检查URL是否重定向?

我已经实现了一个在每个页面上运行的功能,我希望从未登录的用户进行限制.在他或她未登录的情况下,该功能会自动将访问者重定向到登录页面.

我想创建一个从外部服务器运行的PHP函数,并遍历许多设置URL(具有每个受保护站点的URL的数组),以查看它们是否被重定向.因此,我可以轻松确保每个页面上的保护是否正常运行.

怎么可以这样做?

谢谢.

php redirect curl function

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

如何在服务器端调试php脚本?在某种情况下,客户端页面不显示响应

我目前正在我的主机上测试脚本.此脚本用于接受PayPal IPN数据,执行一些操作(即数据验证),将必要的数据发送到特定的电子邮件地址等.

我在PayPal网站上使用测试工具将测试数据发布到我的脚本中.我的脚本不起作用:应该发出代码,但我看不到错误.PayPal中的测试工具只是做了帖子,似乎不接受任何回复.我想看看我的脚本中发生了什么,以便我可以解决它.如何获取脚本输出的错误消息?

有任何想法吗?

php

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

PHP按日期值排序数组

我的PHP代码中有以下数组格式:

foreach ($events as $info) {
    $events_array[] = array(
        'title' => $info->Name,
        'date'  => $info->Date
    );
}
function cb($a, $b) {
    return strtotime($a['date']) - strtotime($b['date']);
}
usort($events_array, 'cb');
Run Code Online (Sandbox Code Playgroud)

编辑:日期值的格式为:YYYY-MM-DD

实际上,当我做print_r时,我明白了

[title] => SimpleXMLElement Object ( ) [date] => SimpleXMLElement Object ( )
Run Code Online (Sandbox Code Playgroud)

php arrays sorting date

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

pep-8的有效性如何"将所有行限制为最多79个字符."

似乎是过去25岁以上显示器的遗物.我正在寻找stackoverflow成员对此的看法,你是否总是尊重这一建议.

python

6
推荐指数
5
解决办法
4566
查看次数