我有一系列的哈希像这样:
[{"testPARAM1"=>"testVAL1"}, {"testPARAM2"=>"testVAL2"}]
Run Code Online (Sandbox Code Playgroud)
而我正在尝试将此映射到单个哈希,如下所示:
{"testPARAM2"=>"testVAL2", "testPARAM1"=>"testVAL1"}
Run Code Online (Sandbox Code Playgroud)
我已经实现了它
par={}
mitem["params"].each { |h| h.each {|k,v| par[k]=v} }
Run Code Online (Sandbox Code Playgroud)
但我想知道是否有可能以更惯用的方式做到这一点(最好不使用局部变量).
我怎样才能做到这一点?
在创建表时,我收到以下错误:
ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
Run Code Online (Sandbox Code Playgroud)
问题是,我实际上没有两列TIMESTAMP同CURRENT_TIMESTAMP为默认值,无论我使用ON UPDATE条款.
我正在尝试执行的DDL查询是
CREATE TABLE user(
/* Basic Information */
id INT NOT NULL AUTO_INCREMENT,
firstname VARCHAR(255) NOT NULL,
surname VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL UNIQUE,
username VARCHAR(255) NOT NULL UNIQUE,
password CHAR(40) NOT NULL,
/* System status information */
active BOOL NOT NULL DEFAULT FALSE,
validated BOOL NOT NULL …Run Code Online (Sandbox Code Playgroud) 我一直试图在过去12小时内设置mysql和phpMyAdmin,但没有任何成功.是的,经过几个小时的Google-ing后,我知道这是一个常见的问题,我在stackoverflow上读过类似的查询,但仍然无法提供解决方案.....
我已经尝试了一切 - 从改变
$cfg['Servers'][$i]['port']
Run Code Online (Sandbox Code Playgroud)
在config.inc.php文件中3306,127.0.0.1....
在config.inc.php文件中键入套接字路径- 两者 tmp/mysql.php和/var/mysql/mysql.sock.
我已经尝试更改my.cnf文件和php.ini中的套接字路径....但我一直得到同样的错误:
#2002 - No such file or directory
The server is not responding (or the local server's socket is not correctly configured).
Run Code Online (Sandbox Code Playgroud)
我正在使用MySQL(5.1.65),PhpMyAdmin(3.5.2.2)和PHP(5.3.8).
我有一个XML文件,其格式非常压缩,所有标签都粘在一起
<PersonalData><IndividualDetails><Title>Mr</Title><Gender>Male</Gender><FirstName>Hae</FirstName><Surname>JONES</Surname><Occupation>Banker</Occupation><DateofBirth>4/6/76</DateofBirth><LastKnownAddress></LastKnownAddress><LastKnownPostCode>00145</LastKnownPostCode><OtherNames></OtherNames></IndividualDetails><OccupationDetails><Company>SD Bank</Company><CompanyAddress>Sunset Boulevard NY</CompanyAddress><ContactNo>335698457</ContactNo></OccupationDetails></PersonalData>
Run Code Online (Sandbox Code Playgroud)
shell中是否有任何可以正确格式化标记的命令.如果没有缩进,只将标签添加到自己的行也可以解决我的问题.
我正在开发Server-Client应用程序,我在输入流上等待输入数据时遇到问题.
我有致力于读取输入数据的线程.目前,它使用while循环来保持数据可用.(NB协议如下:发送数据包的大小,比如N,作为int,然后发送N个字节).
public void run(){
//some initialization
InputStream inStream = sock.getInputStream();
byte[] packetData;
//some more stuff
while(!interrupted){
while(inStream.available()==0);
packetData = new byte[inStream.read()];
while(inStream.available()<packetData.length);
inStream.read(packetData,0,packetData.length);
//send packet for procession in other thread
}
}
Run Code Online (Sandbox Code Playgroud)
它的工作原理但是通过while循环阻塞线程是IMO的一个坏主意.我可以使用Thread.sleep(X)来防止循环继续消耗资源,但肯定必须有更好的方法.
此外,我不能依赖InputStream.read来阻止线程,因为数据的一部分可能由服务器发送延迟.我试过但它总是导致意想不到的行为.
我很感激任何想法:)
我试图在PHP中解析以下格式的字符串(EBNF,我希望这是对的):
<exp> ::= <base>[{<modifier>["!"]"("<exp>")"}]
<base> ::= <role>[{<modifier><role>}]
<modifier> ::= "&" | "|"
<role> ::= ["!"]<str>[","<str>]
Run Code Online (Sandbox Code Playgroud)
哪个<str>字符串会通过哪里[a-zA-Z0-9\-]+
以下是必须解析的模式示例:
token1
token1&token2
token1|(token2&!token3)
(token1&token2)|(token3&(token4|(!token5,12&token6)))
!(token1&token2|(token3&!token4))|token5,12
Run Code Online (Sandbox Code Playgroud)
我正在尝试编写一个总是给我四组的RegEx模式:
<expression>.从上面的例子可以看出:
token1token1token1token1&token2token1&token2|(token3&!token4)["!"]有的话.即
nullnullnullnull! <modifier>下一个<expression>(如果有的话).这将是:
null&|||nulltoken2token2&!token3token3&(token4|(!token5,12&token6))token5,12如果第一个表达式不包含任何<modifier>s ,我可以解析它.
^\(?(!?)([a-zA-Z0-9\-]+)\)?([&|]?)(.*)$
Run Code Online (Sandbox Code Playgroud)
我被困在这一点上.我已经尝试过使用lookarounds,但是我无法弄清楚如何在所有括号均衡时确保捕获该组.这可以通过RegEx实现,还是需要使用循环等编写代码来执行此操作?
我正在尝试使用我的Rails(3.2.7)应用程序解析以下YAML
---
main-menu:
- mitem: Test1
controller: user
action: test
- mitem: Test
controller: user
action: test2
- mitem: Test3
controller: user
action: test
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我加载我的文件时
require "yaml"
@menu = YAML.load_file(file)
Run Code Online (Sandbox Code Playgroud)
我收到一个错误
Psych::SyntaxError in User#test
Showing /srv/http/fiss/app/views/layouts/application.html.haml where line #12 raised:
(/srv/http/fiss/app/assets/yaml/menu.yaml): did not find expected key while parsing a block mapping at line 6 column 5
Run Code Online (Sandbox Code Playgroud)
我是Rails(和YAML)的新手,但是我已经用YAML Lint检查了代码,显然YAML代码是有效的.这是什么原因造成的?
我有一张桌子:
+------------+-----------------------------------------------------------------------------------+
| Field | Type |
+------------+-----------------------------------------------------------------------------------+
| id | int(10) unsigned |
| type | enum('REGISTER','ACTIVATE','LOGIN_SUCCESS','LOGIN_FAIL','LOGOUT','LOCK','UNLOCK') |
| user_id | int(10) unsigned |
| mod_id | int(10) unsigned |
| date | timestamp |
| ip | int(10) unsigned |
| user_agent | text |
+------------+-----------------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
我试图以最简单的方式确定(最好只使用MySQL),如果type = LOGIN_FAIL从表的最后一次type = LOGIN_SUCCESS或从那时开始有3个或更多的连续记录.
例如
+----+---------------+---------+--------+---------------------+----+------------+
| id | type | user_id | mod_id | date | ip | user_agent |
+----+---------------+---------+--------+---------------------+----+------------+
| 6 | LOGIN_SUCCESS | …Run Code Online (Sandbox Code Playgroud) 所以这是RegEx的一个有点不寻常的用法;我想计算将由特定模式匹配的不同字符串的数量(或在合适的情况下表示无限)。
例如,让我们考虑[a-zA-Z]哪个会产生 52,[a-zA-Z]{1,2}哪个会产生 2652(52+52×52?52×2;对于像 一样的字符串减去 52×2 aa,MM它们不不同)或者[a-zA-Z]+哪个会是 ?。
当然,我希望这种机制能够处理比这更复杂的正则表达式。我对 PHP 和 Ruby 的解决方案特别感兴趣。这甚至可能吗?
我有一个IMAPFolder与MessageCountListener侦听消息从文件夹被添加/移除。在我的内部,我messageRemoved(MessageCountEvent ...)需要获取刚刚删除的消息的 UID,以便我可以在本地缓存中反映这些更改。
问题是,如果我尝试对IMAPFolder.getUID(Message ...)已删除的消息执行,我会得到
javax.mail.MessageRemovedException
at com.sun.mail.imap.IMAPMessage.checkExpunged(IMAPMessage.java:220)
at com.sun.mail.imap.IMAPFolder.getUID(IMAPFolder.java:1949)
at (...).IdleWatcher$1.messagesRemoved(IdleWatcher.java:64)
at javax.mail.event.MessageCountEvent.dispatch(MessageCountEvent.java:152)
at javax.mail.EventQueue.run(EventQueue.java:134)
at java.lang.Thread.run(Thread.java:856)
Run Code Online (Sandbox Code Playgroud)
如何确定已删除邮件的 UID?我可以查看所有缓存的消息并检查哪些消息仍然存在,但是每次删除消息时都需要进行资源密集型操作。
我正在为网站编写一个"重置密码"工具,作为其中的一部分,我需要生成一个随机的,唯一的字符串,插入到MySQL数据库中.
截至目前,这只是完成使用SHA1(RAND()),它完美地工作.然而,这仅仅给出1.46150164E48(因为SHA1我不太确定它的独特范围RAND是什么)不同的组合和迂腐我想确保插入两个相同值的情况永远不会发生.
现在我可以轻松地使用PHP(因为这是基于PHP的网站),迭代循环直到生成一个不存在的随机字符串 - 在大多数情况下将是1次迭代,但我想知道这是否是有可能与MySQL?
那就是:在MySQL中,是否有可能生成一个伪随机字符串,MySQL本身将确保在给定的表和字段中是唯一的?
我试图执行修改后的龙形曲线从业务计费16日在哈斯克尔无限名单.
该列表由True和组成False.我们从一些列表开始s0:
s1 = s0 ++ [False] ++ (map not . reverse) s0s2 = s1 ++ [False] ++ (map not . reverse) s1s3 = s2 ++ [False] ++ (map not . reverse) s2通常
sn = s(n-1) ++ [0] ++ (map not . reverse) s(n-1)
= s0 ++ [0] ++ (f s0) ++ [0] ++ (f (s0 ++ [0] ++ (f s0))) ++ ...
where f = …Run Code Online (Sandbox Code Playgroud) haskell sequence infinite recursive-datastructures self-reference
我正在尝试将两个字段(Shipping Postcode和Billing Postcod)添加到Magento 1.7CE的后端销售网格中.
我是通过重写Mage_Adminhtml_Block_Sales_Order_Grid::setCollection(...)来加入表格来做到这一点的sales/order_address.
public function setCollection($collection){
parent::setCollection($collection);
$collection->getSelect()->join(
array('address_shipping' => $collection->getTable("sales/order_address")),
'main_table.entity_id = address_shipping.parent_id AND address_shipping.address_type = "shipping"',
array('postcode')
);
$collection->getSelect()->join(
array('address_billing' => $collection->getTable("sales/order_address")),
'main_table.entity_id = address_billing.parent_id AND address_billing.address_type = "billing"',
array('postcode')
);
}
Run Code Online (Sandbox Code Playgroud)
而Mage_Adminhtml_Block_Sales_Order_Grid::_prepareColumns(...)将这些列添加到销售网.
protected function _prepareColumns(){
$this->addColumn('shipping_postcode', array(
'header' => Mage::helper('sales')->__('Shipping Postcode'),
'index' => 'postcode',
));
$this->addColumn('billing_postcode', array(
'header' => Mage::helper('sales')->__('Billing Postcode'),
'index' => 'postcode',
));
return parent::_prepareColumns();
}
Run Code Online (Sandbox Code Playgroud)
问题是,我需要postcode从sales/order_address表中选择字段,这会导致SQL错误
SQLSTATE[23000]: Integrity …Run Code Online (Sandbox Code Playgroud)