小编pat*_*shi的帖子

"使用"与将参数传递给控制器​​功能之间的区别

我没有一个特定的问题,只是希望加深我对Silex正在发生的事情的理解以及一些新的PHP功能.这是基于Silex文档"使用"页面上的代码示例:

$blogPosts = array(
    1 => array(
        'date'      => '2011-03-29',
        'author'    => 'igorw',
        'title'     => 'Using Silex',
        'body'      => '...',    );

$app->get('/blog/{id}', function (Silex\Application $app, $id) use ($blogPosts) {
    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

问题

  • 将the $app$idas作为参数传递给函数,并使用 -ing $blogPosts变量有什么区别?

  • 可能$blogPosts也已通过了作为参数的函数?

  • 另外,我更常见use ($app).使用 -ing $app和传递它是一个参数有什么区别?

php closures anonymous-function silex

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

为什么 git (bash) 在我的新文件中插入一堆废话?

所以。我向 git 存储库添加了一些我已经几个月没有接触过的新文件。出于某种原因,在合并、拉取并将我的更改推送到 github 之后,我注意到所有新文件都像这样插入了文本:

>>>>>>>>
HEAD
c0d3234k2jl423;lk4j232;l34jk32;l23j4
Run Code Online (Sandbox Code Playgroud)

在新添加的文件中,这些类型的行是随机插入的,但可能不是完全随机的。幸运的是,没有太多新文件,我能够通过,相当容易地清理它们,然后重新添加/提交/推送,现在我相信问题已经解决了。

但是发生了什么?我对 git 和 github 还是很陌生。我怎样才能避免将来发生这种情况?我在 Windows XP 上使用 git bash 控制台。

另外 - 因为这可能是相关的 - 当我早些时候尝试通过我的 PHPStorm CLI 界面提交文件时,我会点击“提交”并且提交永远不会完成。只是不断地尝试和尝试。所以我一直不得不中止该命令,然后进入并手动删除 index.lock 文件以及 COMMIT_EDITMSG.swp 文件。

另外,这最后一次(当插入废话时),我收到一条错误消息,上面写着

E138: can't write viminfo file u:_viminfo!
Press enter or type command to continue
Run Code Online (Sandbox Code Playgroud)

也许这也有关系?就像我说的,这个问题现在似乎已经过去了,只是想知道出了什么问题以及将来如何避免它。

git github git-bash

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

file_get_contents()是阻塞函数吗?

我通过file_get_contents连接到不可靠的API.由于它不可靠,我决定将api调用放入while循环中:

$resultJSON = FALSE;

while(!$resultJSON) {
    $resultJSON = file_get_contents($apiURL);
    set_time_limit(10);
}
Run Code Online (Sandbox Code Playgroud)

换句话说:在第3次尝试成功之前说API失败了两次.我是否发送了3个请求,或者我已经发送了数百个请求,这些请求是否符合3秒窗口的要求?

php file-get-contents blocking

4
推荐指数
1
解决办法
4216
查看次数

CodeIgniter站点在子目录中,htaccess文件可能会干扰主目录中的htaccess文件?

在我的CodeIgniter站点(托管在GoDaddy上),导航到任何页面,但索引给我这个错误:

没有指定输入文件.

谷歌搜索,似乎原因必须与我的.htaccess情况有关.设置的方式,也许最终可能会改变,是我的CI站点位于主域的子目录中.CI站点和主域都有自己的.htaccess文件.CI htacess文件位于applications文件夹中:

<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /SubDomain/index.php?$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

这里的主要htaccess文件是CI的两个级别,因此阅读:

RewriteEngine on
RewriteCond %{SERVER_PORT} 80
rewriterule ^(.*)$ https://www.MainDomain.org/$1 [r=301,nc]
Run Code Online (Sandbox Code Playgroud)

我担心这两套重写规则相互冲突,我真的不知道该怎么做.我可以改变htaccess文件,并且真的希望让他们在和平与和谐中一起工作.然而,它也有可能与htaccess没有任何关系.

php .htaccess routing rewrite codeigniter

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