我想弄明白我可能做错了什么.此查询似乎没有使用索引,因为它取代了long.
执行时:
Explain SELECT a, b, c, d FROM `table` WHERE d = 4013456
id select_type table type possible_keys key key_len ref rows Extra`
1 SIMPLE table ALL d NULL NULL NULL 79787 Using where`
index:
d INDEX 79787
Run Code Online (Sandbox Code Playgroud)
有什么我做错了吗?解释里面的查询花了10秒钟......好像应该花不到一秒钟.
谢谢!
我一直在寻找模仿我见过的东西的方法,但是我真的不确定从哪里开始或者如何搜索它.
让我们说我的页面是:
foo.com/和我的索引页面可以采用以下参数:index.php?id = 5
我想要做的是创建以下内容:
foo.com/5/而不是放置index.php?id = 5只需使用webstring传入参数,不仅要隐藏它的PHP页面,还要隐藏更多的url.
这可能吗?
干杯
我有一个看起来像的varchar字段(遗憾的是我无法控制数据):
Fri, 30 Oct 2009 06:30:00 EDT
Run Code Online (Sandbox Code Playgroud)
有没有办法将其转换为时间戳格式,以便我可以根据它进行排序?
在PHP中构建XML时,是否可以更快地构建字符串,然后回显字符串或使用php为您提供的XML函数?目前我正在做以下事情:
更新为更好的代码片段:
$searchParam = mysql_real_escape_string($_POST['s']);
$search = new Search($searchParam);
if($search->retResult()>0){
$xmlRes = $search->buildXML();
}
else {
$xmlRes = '<status>no results</status>';
}
$xml = "<?xml version=\"1.0\"?>";
$xml.="<results>";
$xml.=$xmlRes;
$xml.="</results>"
header ("content-type: text/xml");
header ("content-length: ".strlen($xml));
echo($xml);
class Search {
private $num;
private $q;
function __construct($s){
$this->q = mysql_query('select * from foo_table where name = "'.$s.'"');
$this->num = mysql_num_rows($this->q);
}
function retResult(){
return $this->num;
}
function buildXML(){
$xml ='<status>success</status>';
$xml.='<items>';
while($row = mysql_fetch_object($this->q)){
$xml.='<item>';
$desTag = '<info><![CDATA[';
foreach ($row as $key => …Run Code Online (Sandbox Code Playgroud) 我正在努力理解的一件事是,在设置我们当前的Mongo配置时,我们目前有两台带有仲裁器的服务器.
现在我先创建一个关于主人的记录; 去了二级,然后试图找到它,我收到的错误看起来像:
error: { "$err" : "not master and slaveok=false", "code" : 13435 }
Run Code Online (Sandbox Code Playgroud)
在mongo的网站上阅读Slave OK后,我发现在我需要设置的辅助服务器上
rs.slaveOk();
Run Code Online (Sandbox Code Playgroud)
但是我不完全理解为什么在查询服务器时我会在PHP中执行此操作; 或者如果我错误地理解这一点.
基本上我有一个服务器池,我打算连接到它们:
$m = new Mongo("mongodb://localhost:27017", array("replicaSet" => "myReplSetName"));?>
Run Code Online (Sandbox Code Playgroud)
这将连接到主..然而,这似乎并没有分配读取负载..我怎么能分配读取负载,以便它跨越两个服务器,从而使查询更快?
先感谢您
我正在使用以下解析XML:
$data = simplexml_load_string($xmlFile);
foreach($data->item as $key => $current){
echo($current);
}
Run Code Online (Sandbox Code Playgroud)
但是我想知道,如果击中一个看起来像这样的元素:
<thumbnail url="http://foo.bar" height="225" width="300"/>
Run Code Online (Sandbox Code Playgroud)
我如何拉动这个内部?(身高,网址,宽度)
谢谢!
目前我正在用 php 将文件写到一个目录中,我添加该目录(工作正常),然后当我尝试执行 svn commit 时,它不起作用也不返回任何类型的错误代码。有人对此有任何想法吗?
$tmp = exec('cd '.$this->build_locations[$this->type].'; svn commit --username user --password pw; ls', $output);
Run Code Online (Sandbox Code Playgroud)
我执行 cd 到目录(这里的 ls 工作正常吗),之后我执行 ls 来确认它仍然在目录中。
我也尝试过:
svn help
Run Code Online (Sandbox Code Playgroud)
它会很好地返回所有命令(所以我知道这不是找不到 svn 命令的问题。
我已经对文件 777 进行了 chmod 操作以确认它可以执行。
编辑后的代码:
$output = array();
$tmp1 = exec("cd ".$this->build_locations[$this->type].";");
$tmp = exec("svn commit ".$this->build_locations[$this->type].$this->app_id." --username user --password password -m 'test' --non-interactive --trust-server-cert --quiet 2>&1;", $output, $error);
if($error){
echo('<pre>');
print_r($output);
echo('</pre>');
}
exit;
Run Code Online (Sandbox Code Playgroud)
这会产生:
Array
[0] => could not lookup DNS configuration info service: (ipc/send) invalid …Run Code Online (Sandbox Code Playgroud) 我为我正在做的特定查询创建了几个项目的索引:
{
"v" : 1,
"key" : {
"MODIFIED" : -1,
"state" : 1,
"fail" : 1,
"generated" : 1
},
"ns" : "foo.bar",
"name" : "MODIFIED_-1_state_1_fail_1_generated"
}
Run Code Online (Sandbox Code Playgroud)
但是,当我执行我的查询时,它并不是使用我的索引.你能不能对我做错了怎么说?
谢谢!
db.foo.find( {
"$or": [
{
"MODIFIED": {
"$gt": {
"sec": 1321419600,
"usec": 0
}
}
},
{
"$or": [
{"state": "ca"},
{"state": "ok"}
]
}
],
"$and": [
{"fail": {"$ne": 1}},
{"generated": {"$exists": false}}
]
}).explain();
{
"cursor" : "BasicCursor",
"nscanned" : 464215,
"nscannedObjects" : 464215,
"n" : 0,
"millis" …Run Code Online (Sandbox Code Playgroud) 我写了一个小函数来获取一个url,并调整图像大小并将其存储在我的本地,但是当需要创建文件夹时脚本运行大约0.85秒,而调整大小时需要0.64秒.我目前支持JPEG和PNG,如下所示.
我想知道是否有更快的方法或我正在做的事情需要很长时间,因为我现在的时间对我来说是不可接受的,我真的希望让它更快地执行.
任何想法/想法都非常感谢.
谢谢!
function getTime() {
$timer = explode( ' ', microtime() );
$timer = $timer[1] + $timer[0];
return $timer;
}
function createThumb($thumb, $ids){
$start = getTime();
// File and new size
$filename = $thumb;
// Get new dimensions
$img1 = getimagesize($filename);
if ($img1[0] > $img1[1]) {
$percentage = ('72' / $img1[0]);
} else {
$percentage = ('72' / $img1[1]);
}
$new_width = $img1[0] * $percentage;
$new_height = $img1[1] * $percentage;
// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
if($img1['mime']=='image/png'){
$image …Run Code Online (Sandbox Code Playgroud) 目前,许多我的密码的存储与MD5的SHA1算法的但是我刚刚被介绍到腌制的混合物,并想知道什么可能是最安全的故障.
我证明一个简单的md5()很容易被撤销,然而md5(sha1(md5($ var))); 这个组合是否提供了更多难度,或者更不一定更好.
而且,正在做
$var = $var.'t00lup';
md5($var);
Run Code Online (Sandbox Code Playgroud)
比上面更安全,假设t00lup是一个私钥?
有没有更好的方法来做这个,而不是只使用md5或只使用sha1?
谢谢
我一直在讨论使用带有div的css和布置元素,我真的希望看看我一直在使用的练习是否被认为是最佳实践,或者如果有不同的东西,我看起来会更好.
假设我们在同一条线上放置了两个图像,在右侧的左侧,然后在其下方的广告中放置了一个文本.我可能会这样做:
#container{
width:800px;
height:300px;
}
.fleft{
float:left;
}
#left_img_container{
float:left;
width:150px;
}
#right_img_container{
float:right;
width:150px;
text-align:right;
}
#textArea{
margin-top:5px;
width:100%;
}
<div id='container'>
<div class='fleft'>
<div id='left_img_container'>FOO IMAGE 1</div>
<div id='right_img_container'>FOO IMAGE 2</div>
</div>
<div class='fleft' id='textArea'>this is my text</div>
</div>
Run Code Online (Sandbox Code Playgroud)
简单的例子但是隐藏了浮动类型的布局样式.这是更好的做法吗?或者使用clear会更好?
提前致谢
使用Sessions时,是否需要声明session_start()或ob_start()?这样做有什么好处呢?
谢谢!
php ×8
performance ×3
mongodb ×2
mysql ×2
security ×2
sql ×2
xml ×2
architecture ×1
casting ×1
css ×1
exec ×1
md5 ×1
mongodb-php ×1
optimization ×1
parsing ×1
session ×1
sha1 ×1
svn ×1