小编Cen*_*ion的帖子

PHP在foreach中通过引用传递

我有这个代码:

$a = array ('zero','one','two', 'three');

foreach ($a as &$v) {

}

foreach ($a as $v) {
  echo $v.PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么输出是:零一二二.

来自zend认证学习指南.

php

177
推荐指数
7
解决办法
10万
查看次数

php中的float和double之间的区别?

我有这个代码

$vad = 1.1;

print gettype($vad);

var_dump($vad);
Run Code Online (Sandbox Code Playgroud)

这将输出:

double
float(1.1) 
Run Code Online (Sandbox Code Playgroud)

所以它是双重或浮动在PHP?

php

112
推荐指数
4
解决办法
8万
查看次数

laravel 4 - >获取列名

如何使用Schema,DB或Eloquent获取Laravel 4中数组或对象中表的列名.

似乎我找不到一个随时可用的功能,也许你有一些自定义的实现.

谢谢.

php mysql database laravel laravel-4

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

从纬度经度获取mysql的结果

我有一个mysql数据库和2个表让我们说客户和学校.现在每个表都有列纬度和经度.我需要在第二个表格中制作一个SELECT,其中学校位于第一张桌子的一个记录的给定半径范围内.应根据纬度和经度进行计算.PS:我正在使用PHP.

php mysql select latitude-longitude

11
推荐指数
1
解决办法
864
查看次数

Python与PHP的速度

我想解决Project Euler(BTW,问题25)中的问题,我在Python中找到了一个解决方案:

fibonacci = 1
old1 = 0
old2 = 1
limit = 1000

i = 1

while len(str(fibonacci)) < limit:
    fibonacci = old1 + old2
    old1 = old2
    old2 = fibonacci
    i = i + 1

print(i)
Run Code Online (Sandbox Code Playgroud)

计算需要1.5秒.

我在PHP中实现了相同的,这是代码:

$fibonacci = 1;
$old1 = 0;
$old2 = 1;
$limit = 1000;

$i = 1;

while (strlen((string)$fibonacci) < $limit){
    $fibonacci = $old1 + $old2;
    $old1 = $old2;
    $old2 = $fibonacci;
    $i = $i + 1;
}
print($i);
Run Code Online (Sandbox Code Playgroud)

花了30多分钟,还在计算...... …

php python

11
推荐指数
2
解决办法
2865
查看次数

php中的矩阵排列问题

我想知道一些解决这个问题的方法.

给出一个数字,比方说16,你必须以这种方式排列矩阵

1  2  3  4
12 13 14 5
11 16 15 6
10 9  8  7
Run Code Online (Sandbox Code Playgroud)

语言没关系,(最好是PHP);

php algorithm logic

10
推荐指数
1
解决办法
1245
查看次数

MySQL准备语句与简单查询性能

我做了一些测试,首先我测试了mysql准备语句$pdo->prepare()$insert_sth->execute()10k插入(如果重要的话,带有命名参数),并花了301s.

之后我做了简单的插入查询,并且每次插入相同的10k插入也需要303s.

所以我想知道:准备好的陈述真的能带来性能上的好处吗?因为我的测试没有显示它,或者我必须优化我准备好的语句版本才能使它们更快?

如果需要,我可以提供我的源代码.

mysql

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

不推荐使用PHPUnit StackTest :: assertEmpty()

我正在学习使用PHPUnit构建php单元测试.他们有一本手册,我遇到了这个例子,他们使用assertEmpty(),但是当我在命令行中运行这段代码时,我得到了这个错误:Call to undefined method StackTest::assertEmpty() in /var/www/.../tests/StackTest.php on line 20.因此,如果不推荐使用此方法或使用它的原因,还有另一种方法吗?(当然我可以试试这个$this->assertEquals(0, count($stack));)但是反正......同样的assertNotEmpty().

php testing phpunit unit-testing

6
推荐指数
2
解决办法
2265
查看次数

安装多个Laravel宅基地环境

我想知道如何在没有VirtualBox崩溃的情况下运行多个版本的宅基地.

我目前正在运行laravel homestead的默认安装,但我需要安装另一个旧版本,原因是在当前版本0.4.0中mysql服务器是5.7这很好,但我需要另一个5.6环境,因为我有一个需要5.6的旧项目,所以宅基地版本0.3.0就可以了.

需要明确的是:我知道如何运行多个站点.这不是问题.我只想运行第二个定制版本的Laravel Homestead Vagrant盒子,同时仍然可以运行我的正常盒子.

细节:我设法添加两个版本.产量:

vagrant box list
laravel/homestead (virtualbox, 0.3.0)
laravel/homestead (virtualbox, 0.4.0)
Run Code Online (Sandbox Code Playgroud)

所以版本0.4.0运行正常,现在我怎么能运行0.3.0?

提前致谢!

php mysql laravel homestead

6
推荐指数
1
解决办法
1344
查看次数

Zend框架Checkbox问题

您好Zend_Form_Element_Checkbox的问题是,当它呈现它时,它创建一个与实际复选框同名的隐藏输入字段.那么让我们看看代码:

这就是我在表单中创建元素的方法:

    $onlineCheckbox = $this->createElement('checkbox', 'online_checkbox', array(
      'label'=>'Online:',
      'uncheckedValue'=> '0',
      'checkedValue' => '1'
    ));
Run Code Online (Sandbox Code Playgroud)

这是输出html的样子:

<input type="hidden" name="online_checkbox" value="0" /><input type="checkbox" name="online_checkbox" id="online_checkbox" value="1" />
Run Code Online (Sandbox Code Playgroud)

现在的问题是,在其他浏览器中,然后Firefox我通过post获得所需的结果(如果未选中'0',如果选中'1'),但在Firefox中,两种情况我得到'0',我知道这是因为隐藏的领域.我用谷歌搜索,似乎没有弄清楚这个问题.所以我的问题是其他人如何管理这个,或者可能有一个解决方案让这个工作在Firefox中.任何帮助将不胜感激.预先感谢.

编辑:感谢@Marcin - 我认为问题出在我的装饰者身上.在Firebug中我得到一个混乱的输出,我想如果我将正确安排它将工作,再次感谢@Marcin指出!

php checkbox firefox zend-framework

5
推荐指数
1
解决办法
4279
查看次数