我在写一个php函数来搜索php文件中的某个文本时遇到了问题.我对正则表达式不太满意所以我认为这就是问题所在.
我需要正则表达式有一个起始单词和结束单词,并且应该返回中间找到的文本.这是我试过的:
$handle1 = fopen($file, "r");
$fileContents = fread($handle1,filesize($file));
if (preg_match('/'.$start. '((.|\n)*)'. $end.'/', $fileContents, $match)) {
$text=preg_split('/'.$start.'((.|\n)*)'. $end.'/', $match[0]);
echo $text. " found in $file<br/>";
}
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
ArrayList未同步.但是有一种方法可以获得java.util.ArrayListJavaDoc中提到的同步方法:
List list = Collections.synchronizedList(new ArrayList(...));
Run Code Online (Sandbox Code Playgroud)
在java.util.CollectionsJavaDoc中,您可以读到" 当迭代它时,用户必须在返回的列表上手动同步: "
synchronized(list) {
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
foo(i.next());
}
Run Code Online (Sandbox Code Playgroud)
使用同步的ArrayList会产生额外的工作,为什么不使用
java.util.Vector?使用这种方法有优势吗?
我在http://www.coderanch.com/上找到了这个问题,我在同一篇文章中分享了它的好答案.
我正在尝试找到一个带数字的函数并输出预期结果,如下所示:
如果输入= 1则输出应为 Array{'0','1'}
如果输入= 2则输出应为 Array{'00','01','10','11'}
如果输入= 3则输出应为 Array{'000','001','010','011','100','101','110','111'}
等等.翻转一些硬币.
我不知道php中是否有一个函数可以做到这一点,但如果没有人可以告诉我它是如何完成的?
我有一个zend框架项目,我在页面中加载一些javascript.如何从javascript代码中关闭该页面?
window.close()仅在使用window.open()打开当前窗口/选项卡/页面时才有效,这不是我的情况,它不是解决方案.
还有其他方法吗?
抱歉,这似乎是一个菜鸟问题.今天早上我的大脑无法工作.
我试图执行多个if语句,但它们表现不正常.它似乎总是在找到它正在寻找的模板之后加载最少的模板.做这样的事情的最佳方法是什么:
$post = $wp_query->post;
if ( in_category('7') ) {include(TEMPLATEPATH . '/post-experts.php');}
if ( in_category('6') ) {include(TEMPLATEPATH . '/post-radio.php');}
if ( in_category('5') ) {include(TEMPLATEPATH . '/post-lifestyle.php');}
else {include(TEMPLATEPATH . '/singleorigional.php');
}
Run Code Online (Sandbox Code Playgroud)
好吧,我有一个关联数组包含应该在文件中下载的数据,然后稍后导入以便稍后使用相同的数据.
它看起来像这样(只有一些键包含数组):
array(
'id1' => 'Data1',
'id2' => 'Data2',
'id3' => 'Data3',
'id4' => 'Data4',
'id5' => array(
'id1' => 'Data1',
'id2' => 'Data2',
'id3' => 'Data3'
)
Run Code Online (Sandbox Code Playgroud)
);
那么最好的方法是什么?
我有一张桌子tbl_orders.它有一个数量字段quantity.在我的应用程序的某些部分,我需要将数量减少1.
我已经知道了id记录(可以从客户端获得),所以我发布了一个更新声明:
UPDATE tbl_orders
SET quantity=quantity-1
WHERE id= 6
Run Code Online (Sandbox Code Playgroud)
问题是此查询可能会意外地同时运行多次.例如,2个客户服务运营商可以同时更新同一记录.这意味着当数量应该仅减少一次时,数量将减少2.
我尝试将更新放在一个事务中,但这导致只延迟第二个事务,直到第一个事务提交.一旦提交,第二次更新就会再次运行并递减记录.
如果正在修改记录,如何确保其他查询失败?
更新:
要使更新有效,客户端的数量在数据库中是相同的.例如,如果用户在其浏览器上看到数量5并想要减少它,则数据库中的值必须相同.
更新2
我在这里找到了一个很好的解释,使用Doctrine 2进行乐观锁定:
我在Stackoverflow上多次看到这段代码:
public void doStuff(Object anObject) {
if (anObject == null) {
throw new NullPointerException("anObject can't be null");
}
//rest of the function
}
Run Code Online (Sandbox Code Playgroud)
这是一个针对null参数的保护子句,因为传递null给需要参数为非null的函数将导致a NullPointerException.
我理解保护条件在其他情况下验证参数的重要性(即检查日期范围,负货币值,无效字符串大小等).
但是,在null 具体情况下是不是NullPointerException多余的?这与NullPointerException后来运行时抛出一个不同之处有什么不同?
注意:我用语言无关的方式询问,因为模式本身可以应用于Java和C#.
php ×4
java ×2
arraylist ×1
arrays ×1
browser ×1
c# ×1
client-side ×1
concurrency ×1
database ×1
function ×1
javascript ×1
mysql ×1
null ×1
probability ×1
regex ×1
search ×1
xml ×1