小编Don*_*nic的帖子

在CakePHP 2.1插件中使用App :: uses(而不是App :: import)

我正在CakePHP 2.1中编写一个小应用程序,我想使用Nick Baker的文件上传插件.我下载了cakephp2.0分支(我知道还没有完成),并把它放在我的应用程序插件文件夹中.我在上面做了一些必要的修改,但我很好奇的正确方法是什么,以取代那些App::import函数调用(在开始时FileUploadComponent,FileUploadBehaviorFileUploadHelper类)与App:uses功能.

它需要FileUploadSettings从Config/file_upload_settings.php 导入类,并Uploader从Vendor/upload.php 导入类.它可以通过该require_once函数完成,但我确信有一种CakePHP方法可以做到这一点.

plugins cakephp

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

如何控制或更改所有文本为大写

我正在开发一些供我公司使用的表格.我咨询并将数据插入到数据库中,但对于标准问题,我想将我输入的文本转换为大写,我该怎么做?

我的一个表格示例:

我希望我输入的文本字段自动转换为大写,或者我输入数据库的数据已经转换为大写(在用户不以这种方式输入的情况下).


编辑:

我试试

$("tbCiudad").change(function() {
    $(this).val($(this).val().toUpperCase());
});
Run Code Online (Sandbox Code Playgroud)

要么

$("tbCiudad").keyup(function() {
    $(this).val($(this).val().toUpperCase());
});
Run Code Online (Sandbox Code Playgroud)

那个领域没有任何反应.我究竟做错了什么?

asp.net-mvc jquery

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

Cordova 3.4 - 检测键盘事件

我想检测showkeyboardhidekeyboard事件在运行感谢科尔多瓦3.4.0和jQuery Mobile的1.4.2我的应用程序.在配置文件中,fullscreen属性设置为true(我需要它).

事实是,在LogCat中,我无法阅读(显然这是由于全屏模式):

SoftKeyboardDetect:忽略此事件

是否有任何解决方案来检测这两个事件?我通过检测输入字段上的模糊和焦点事件尝试了另一种方法.它可以工作,但是当后退按钮关闭键盘时,不会调用这些事件.

所以,我试图检测后退按钮事件,但它不起作用(http://simonmacdonald.blogspot.fr/2011/05/overriding-back-button-in-phonegap.html).

keyboard jquery events android cordova

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

当我在Apache中使用它时,为什么PHP无法识别Windows系统路径中的程序?

在我的本地开发环境中,我在Windows 7上安装了Apache和PHP.我用我的PHP程序用exec调用7-Zip.我一开始尝试过

exec('7z a example.zip example.pdf');
Run Code Online (Sandbox Code Playgroud)

但它没有创建zip文件.检查完Apache错误日志后,我找到了

'7z'不被识别为内部或外部命令,可操作程序或批处理文件.

更改exec为包含7-Zip.exe的完整路径后,它工作.

exec('"C:\\Program Files\\7-Zip\\7z" a example.zip example.pdf');
Run Code Online (Sandbox Code Playgroud)

但是C:\Program Files\7-Zip包含在我的Windows系统PATH中.相同的PHP代码在命令行中运行,而不使用完整路径.

php -r "exec('7z a example.zip example.pdf');"
Run Code Online (Sandbox Code Playgroud)

当我在Apache上使用它时,为什么需要完整的路径?


我最初发布这个问题时忽略的一个重点是,我已经能够用它exec()来调用Windows系统路径中包含的其他程序而不用它们的完整路径来引用它们.

我之前没有提到的另一点是因为我没有意识到它的相关性,最近才将7-Zip添加到PATH中,并且在添加它之后我重新启动了Apache服务.

php

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

迦太基错误"找不到github的标记版本"

我想在我的项目中使用Carthage,所以我安装了Carthage.我在项目的根文件夹中准备了一个Cartfile.当我carthage update在终端中键入命令时,出现此错误:

***克隆HanekeSwift
没有找到标记为github"Haneke/HanekeSwift"的版本

Cartfile文件包含以下行:

github "Alamofire/Alamofire" >= 1.2
github "Haneke/HanekeSwift"
Run Code Online (Sandbox Code Playgroud)

为什么我收到此错误?

carthage haneke

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

为什么我会得到 Undefined property: stdClass:: with php 8 nullsafe 运算符

PHP 8.0 引入了 nullsafe 运算符,可以像这样使用$foo?->bar?->baz;Undefined property: stdClass::$first_name我有一个在 php 8.1 上运行的代码示例,即使它使用 nullsafe 运算符,也会引发错误:

$reference = (object) $reference; // Cast of array to object

return [
    'FirstName' => $reference?->first_name,
];
Run Code Online (Sandbox Code Playgroud)

为了解决该错误,我必须使用空合并运算符:

$reference = (object) $reference; // Cast of array to object

return [
    'FirstName' => $reference->first_name ?? null,
];
Run Code Online (Sandbox Code Playgroud)

为什么 nullsafe 运算符在这种情况下会抛出错误?

php null null-coalescing-operator nullsafe

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

PHP不总是服务器端技术吗?

PHP手册的FAQ部分,我遇到了这个:

由于Javascript(通常)是客户端技术,而PHP(通常)是服务器端技术......

我理解它们对Javascript的意义,但在其他情况下可以使用PHP吗?

php

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

为什么我的整数应该溢出呢?

我在Windows 7上运行PHP 7.0.8(VC14 x64线程安全版).

echo PHP_INT_MAX;显示9223372036854775807,但这实际上似乎并不正确.根据PHP 文档,

如果PHP遇到超出整数类型边界的数字,它将被解释为浮点数.

但是当我从文档中运行代码来演示32位系统上的整数溢出时,情况并非如此.

$large_number = 2147483647;
var_dump($large_number);     // expected: int(2147483647)     actual: int (2147483647)

$large_number = 2147483648;
var_dump($large_number);     // expected: float(2147483648)   actual: int (-2147483648)
Run Code Online (Sandbox Code Playgroud)

更奇怪的是,文档中的另一个例子:

$large_number = 9223372036854775807;
var_dump($large_number);    // expected: int(9223372036854775807)    actual: int(-1)

$large_number = 9223372036854775808;
var_dump($large_number);    
    // expected: float(9.2233720368548E+18), actual: float(9.2233720368548E+18)
Run Code Online (Sandbox Code Playgroud)

这是一个错误,还是我误解了什么?我发现的唯一类似的错误var_dump(PHP_INT_MAX)与xdebug的输出不正确(我的版本中存在),但这似乎无法解释这里发生了什么.如果有人知道我应该包含的相关信息,phpinfo我可以添加它.

php php-7

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

运行后如何使用Ratchet\Server\IoServer对象?

我想运行一个迭代生成器类的函数.只要Ratchet连接处于活动状态,发电机功能就会运行.我需要做的就是在run执行方法后实现这一点:

use Ratchet\Server\IoServer;
use Ratchet\Http\HttpServer;
use Ratchet\WebSocket\WsServer;
use MyApp\Chat;

require dirname(__DIR__) . '/xxx/vendor/autoload.php';

 $server = IoServer::factory(

    new HttpServer(
        new WsServer(
            new Chat()
        )
    ),

    8180,
    '0.0.0.0'

);

$server->run();
Run Code Online (Sandbox Code Playgroud)

这是我在服务器启动后需要运行的方法:

function generatorFunction()
{

$products = r\table("tableOne")->changes()->run($conn);
 foreach ($products as $product) {
   yield $product['new_val'];
 }

}
Run Code Online (Sandbox Code Playgroud)

以前我之前正在调用这个函数$server->run():

for ( $gen = generatorFunction(); $gen->valid(); $gen->next()) {
 var_dump($gen->current());
}
$server->run();
Run Code Online (Sandbox Code Playgroud)

但这不允许客户端建立与Ratchet服务器的连接.我怀疑它永远不会$server->run()被生成,因为生成器类正在被迭代.

所以现在,我想首先启动服务器,然后调用这个生成器方法,以便它可以继续监听更改rethinkdb.

我怎么做?

php ratchet rethinkdb

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

不推荐使用each()函数.此消息将在进一步调用PHP 7.2时被禁止

each()在服务器上的PHP文件中有以下行,我最近将PHP版本从5升级到7.

while(list($file, $info) = each($this->images))
Run Code Online (Sandbox Code Playgroud)

重新启动后,Web服务器将抛出以下错误.

each()函数已弃用.此消息将在进一步调用时被禁止

在PHP 7.2中重写上述代码行的正确方法是什么?

谢谢.

php

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