每个PHP程序员都可能至少使用某种形式的模板引擎和数据库抽象层,但除了那些额外的东西你认为必不可少还是会推荐你的同事程序员尝试?
假设你取字符串'a'和'z'并按字母顺序列出它们之间的所有字符串:['a','b','c'...'x','y','z "].从这个列表的中点开始,你会发现'm'.所以这有点像取两个字符串的平均值.
您可以将其扩展为具有多个字符的字符串,例如,'aa'和'zz'之间的中点可以在列表中间找到['aa','ab','ac'...'zx ','zy','zz'].
可能在某处有一个Python方法可以做到这一点吗?如果没有,即使知道算法的名称也会有所帮助.
我开始制作我自己的例程,简单地通过两个字符串并找到第一个不同字母的中点,这似乎在'aa'和'az'中点是'am'时工作得很好,但是然后它在'cat'上失败了,它认为是'c'的'小狗'中点.我尝试使用谷歌搜索"二进制搜索字符串中点"等但不知道我在这里尝试做什么的名称我没有运气.
我添加了自己的解决方案作为答案
我有一个流行的社交游戏,我将每个用户操作存储为数据存储中的Event实体,然后每天从GAE导出这些事件进行处理.现在,我想从数据存储中删除所有这些实体,全部是3亿个实体.
我开始使用"数据存储区管理员".在我让它运行的最初几个小时内,它设法删除了大约200万个实体并使用10美元的CPU来完成这项工作.因此,运行此删除似乎只需1500美元.我开始想我会关闭只是删除整个应用和项目复制我最好不希望删除到新的应用程序.
还有其他选择吗?
更新
我在IRC中获得了关于#appengine的建议,只需一次获取2000个实体的密钥并生成任务以将它们分块删除(可以将键作为字符串传递给任务)可能比使用数据存储管理工具便宜.我现在正在尝试这个并且会记得明天报告,如果这似乎更便宜.
我有一个相当简单的项目,只有两个XIB,5个自定义类和5个框架(CFNetwork,QuartzCore,UIKit,Foundation,CoreGraphics).我之前使用的是XCode 3.x,最近更新到XCode 4.我做了之后,构建时间有时长达一分钟,通常大约30秒.我有一个2.4 GHz的MBP和4GB的内存.

在日志导航器中查看构建日志,我看到"检查依赖关系..."出现很长一段时间,其他一切几乎立即发生.但是,单击此日志条目不会显示任何更多详细信息.我在哪里可以找到有关导致此问题的更多详细信息?
更新:
重新启动后,构建恢复正常速度.背景中可能发生了导致经济放缓的事情.
请提供如何在HTML表单中使用object标记的示例.
我今天正在阅读HTML5规范,以了解现在存在哪种表单元素,并注意到以下内容:
可提交的元素
表示在提交表单元素时可用于构造表单数据集的元素:button,input,keygen,object,select,textarea http://www.w3.org/html/wg/drafts/html/master/ forms.html#类别提交
显然,表单中可以包含对象标记,从而影响表单提交时发送的数据.我熟悉object标签的唯一环境是将Flash电影嵌入到页面中.您可以在表单中使用object标记并使其影响表单提交数据的示例情况是什么?
更新:
在关于如何在提交时构建表单有效负载的规范中,在http://www.w3.org/html/wg/drafts/html/master/forms.html#constructing-form-data-set中找到了这个有趣的片段.
如果field元素是一个object元素:尝试从插件中获取表单提交值,如果成功,则在表单数据集中附加一个条目,其名称为name,返回的表单提交值为value,字符串"object"作为类型.
但我想知道什么样的插件发布这样的提交值.
更新:
QtBrowserPlugin似乎支持在表单中使用它们.现在我需要一个例子就是一个简约的插件.
http://doc.qt.digia.com/solutions/4/qtbrowserplugin/developingplugins.html#using-plugins-in-forms
有没有办法让Xcode 4缩进文本,以便按下所选文本上的选项卡缩进它,shift + tab会像许多编辑器一样取消?
默认⌘]和⌘[似乎不起作用,可能是因为我有芬兰语键盘布局.按下[(alt + 8)的组合键并另外按住⌘不会缩进.
在Xcode偏好中,我找到了"Key Bindings"和"Shift Right","Shift Left",但似乎并不理解shift + tab.如果我尝试按shift + tab,我会收到⇧⌘⇤.

我很高兴在Mac OS X上使用道格拉斯·克罗克福德的JSLint并且我的代码通过了,但在我获得了一个Ubuntu Hardy Slicehost服务器并在那里上传了我的代码后,当我尝试在服务器上运行它时,JSLint不再通过.它在包含变音符号的本地化文件上失败.
我得到的错误如下:
Lint at line 1206 character 25: Unsafe character.
"PREVIOUS" : "zur??ck",
Lint at line 1207 character 26: Unsafe character.
"NEXTPAGE" : "vorw??rts",
Run Code Online (Sandbox Code Playgroud)
文件没有改变,我检查了MD5哈希,两者都相同.这是我从部署脚本运行JSLint的方法:
def lint_ok(fn):
return os.system("java org.mozilla.javascript.tools.shell.Main jslint/jslint.js %s" % fn) == 0
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?有什么不同?我检查了环境(env/set),对字符集/编码的唯一引用是"LC_CTYPE = UTF-8".我尝试将它设置为相同但似乎没有效果.
知道为什么IB不允许我建立连接吗?

目前是否有解决方案可以让您的服务器充当 WebRTC 连接的对等端?
我对 WebRTC 感兴趣的原因不是它的点对点部分,而是因为它使您能够使用 UDP。您可以让玩家参与像《雷神之锤》这样的快节奏游戏,而无需任何插件。
似乎以前也有人问过同样的问题,但随着两年过去了,现在情况肯定已经完全不同了。
我有一个Recurly令牌,我正在尝试使用它开始订阅.我正在关注示例代码片段,例如右侧面板中的代码片段.
subscription = recurly.Subscription(
plan_code = 'bazooka_monthly',
account = recurly.Account(
account_code = 'john_rambo',
billing_info = recurly.BillingInfo(token_id = 'TOKEN_ID')
)
)
subscription.save
Run Code Online (Sandbox Code Playgroud)
但是每当我尝试将token_id传递给BillingInfo时,它就会抱怨"subscri.account.billing_info.number是必需的".
如何在不获取此ValidationError的情况下仅使用token_id创建BillingInfo?