小编pil*_*eks的帖子

$ viewContentLoaded没有触发

$viewContentLoaded永远不会在我的Angular控制器中触发.下列:

function MyController($scope)
{
    $scope.$on('$viewContentLoaded', function()
    {
        alert("blah");
    });
}
Run Code Online (Sandbox Code Playgroud)

永远不会遇到断点,也不会弹出警报.我认为这是非常标准的使用,所以我不确定它是什么,但它肯定不会解雇.控制器中的其他所有内容都表现正常.

什么会导致这个?

javascript jquery angularjs

25
推荐指数
2
解决办法
4万
查看次数

从print_r输出重新创建原始PHP数组

假设我从某些源代码获得此输出,但我无法访问原始PHP创建的数组:

Array
(
    [products] => Array
        (
            [name] => Arduino Nano Version 3.0 mit ATMEGA328P
            [id] => 10005
        )

    [listings] => Array
        (
            [category] => 
            [title] => This is the first line
This is the second line
            [subtitle] => This is the first subtitle
This is the second subtitle
            [price] => 24.95
            [quantity] => 
            [stock] => 
            [shipping_method] => Slow and cheap
            [condition] => New
            [defects] => 
        )

    [table_count] => 2
    [tables] => Array
        (
            [0] => products
            [1] => listings …
Run Code Online (Sandbox Code Playgroud)

php arrays multidimensional-array output

16
推荐指数
1
解决办法
8083
查看次数

PHP中的异步HTTP请求

是否有任何理智的方式在PHP中异步发出HTTP请求而不丢弃响应?即,类似于AJAX的东西 - PHP脚本启动请求,它是自己的事情,然后,当收到响应时,回调函数/方法或其他脚本处理响应.

我想到了一种方法 - 为每个请求生成一个新的php进程和另一个脚本 - 第二个脚本执行请求,等待响应然后解析数据并做任何应该做的事情,而原始脚本继续生成新进程.不过,我对这种情况下的性能表示怀疑 - 每次必须创建一个新进程必然会有一些性能损失.

php asynchronous http request curl-multi

15
推荐指数
1
解决办法
8640
查看次数

允许的最大cookie数

谷歌搜索告诉我,最大允许的cookie数量在很大程度上取决于浏览器,但我找不到任何最近的数据,关于现代浏览器允许多少cookie.

我需要在cookie中存储大量用户首选项(对于尚未注册的用户),那么最好的方法是什么呢?(此外,这些cookie将通过javascript客户端和php服务器端访问)

javascript php cookies

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

如何在opensmppbox中使用SAR TLV进行消息连接?甚至可以做到吗?

从源代码的粗略概述看,opensmppbox似乎只支持使用UDH进行消息连接.是否有可能让它理解与SAR TLV连接的消息?(即,sar_msg_ref_num,sar_total_segments,sar_segment_seqnum)

sms smpp kannel sms-gateway opensmppbox

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

pecl_http无法加载

这是我的服务器配置:

  • CentOS 6.5版(最终版)
  • PHP 5.5.7
  • pecl_http 2.0.4稳定
  • 服务器版本:Apache/2.2.15(Unix)

我已经准备好了所有的东西,除非我试图加载pecl_http模块时它给了我以下警告并且它不会加载:

PHP Warning:  PHP Startup: Unable to load dynamic library '/path/to/php/modules/http.so' - /path/to/php/modules/http.so: undefined symbol: php_persistent_handle_abandon in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

我试着到处寻找但没有运气.安装似乎很好,但我不知道它有什么问题.

php centos pecl

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

PHP Zend引擎扩展静态方法调用

我正在写一个PHP扩展.从C代码我尝试在PHP代码中调用静态方法.

PHP方法如下所示:

<?php
class Model {
  static method GetModelById($id) { ... }
}
?>
Run Code Online (Sandbox Code Playgroud)

C中的调用如下所示:

if( call_user_function_ex(
      &((*ce)->function_table),
      NULL, &fname, &retval_ptr,
      1, func_params, 0, NULL TSRMLS_CC
    ) == SUCCESS
){
  // do some stuff here ...
}
Run Code Online (Sandbox Code Playgroud)

...所有传递的参数都应包含适当的值.这里奇怪的是:如果我编译我的扩展对PHP 5.2代码工作正常,如果我编译这对PHP 5.3,方法调用失败,没有错误消息.

我也尝试过zend_call_method两种版本都没有成功.

任何人都可以给我一个提示吗?你会如何从C调用静态方法?

提前致谢!

编辑

对不起,伙计们,我zend_call_method这样做了:

if( zend_call_method( NULL, *ce, NULL, 
                     "getmodelbyid", 
                     strlen("getmodelbyid"), 
                     &retval_ptr, 1, p1, 
                     NULL TSRMLS_CC ) == FAILURE) {
    php_printf("gosh!");
} 
else {
    php_printf("yep!"); 
}
Run Code Online (Sandbox Code Playgroud)

......所以我学到了:

  1. 函数名称必须始终为小写
  2. 在字符串长度方面,你最好看一下PHP的源代码(zend_call_method内部加+1).

虽然我是C的新手,但我认为PHP代码库在很多方面都过度编译了!

希望这有助于其他人!

php c php-extension php-internals

9
推荐指数
0
解决办法
1145
查看次数

是否有可能在双引号内评估常量?

有没有办法评估双引号内的常量以避免使用连接.

例如,我可以做以下事情:

echo "$variable";

echo "{$array["index"]}";

echo "{$this->myProperty}";
Run Code Online (Sandbox Code Playgroud)

不幸地回应"{MY_CONSTANT}"不起作用.

那么,有没有办法像上面的例子一样评估常量,避免连接?

我知道有替代代码并获得相同的结果,但我的目标只是常量.

我的动机是编写sql语句,例如:

$sql = "SELECT * FROM {MY_JOIN} WHERE id > 100";
Run Code Online (Sandbox Code Playgroud)

MY_JOIN常会是这样的

"
orders
INNER JOIN
users
    ON (orders.user_id = users.id)
"
Run Code Online (Sandbox Code Playgroud)

或者避免类似的事情

$dir = DIRECTORY_SEPARATOR."folder1".DIRECTORY_SEPARATOR."folder2".DIRECTORY_SEPARATOR;
Run Code Online (Sandbox Code Playgroud)

我知道我可以编写类似的东西$separator = DIRECTORY_SEPARATOR和代码 $dir = "{$separator}folder1{$separator}folder2{$separator}";但是如果有可能的话,我想直接用常量来做.

php

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

有没有办法查看准备好的查询,因为它将在数据库上执行?

可能重复:
PDO准备的声明

我在PHP中使用mysqli扩展,我想知道,有没有办法看到准备好的查询,因为它将在服务器上执行,例如查询是这样的

select * from table1 where id = ? and name = ?
Run Code Online (Sandbox Code Playgroud)

但我希望在填写值后查看查询,如下所示:

select * from table1 where id = 20 and name = "John"
Run Code Online (Sandbox Code Playgroud)

php mysql mysqli

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

MAMP与MySQL自然驱动程序

所以我一直在和MAMP一起在我的计算机上本地开发一个站点,但是其中一个真正让我烦恼的事情是MAMP没有附带用于PHP的MySQL Natural Driver.所以我不能使用这个可爱的get_result()功能.我甚至尝试用驱动程序手动编译PHP,但很快就火上浇油.如果不可能使用mysqlnd设置MAMP,那么有人可以解释一下最好的方法吗?运行Mac OS X 10.7 Lion.

php mamp mysqlnd

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