Tag: php

与PHP在C中的“爆炸”并行:使用分隔符将char *拆分为char *

可能重复: 在C中拆分带分隔符的字符串 我正在寻找一种使用分隔符将char * “爆炸”成其他char *的好方法。 我的分隔符将是#

上传和POST文件到PHP页面

我需要一种方法来上传文件并将其发布到php页面 php在apache服务器上 我在我的桌面应用程序中使用此c代码: 它是c代码的套接字 当我执行程序时,可以得到 文件大小是772906 open server ok文件大小是772906连接到服务器ok打开文件ok fread 102400 bytes,发送102400字节fread 102400字节,发送102400字节fread 102400字节,发送102400字节fread 102400字节,发送102400字节fread 102400发送102400字节fread 102400字节,发送102400字节fread 102400字节,发送102400字节fread 56106字节,发送56106字节发送文件完成! 结果:返回代码: 上传: 类型: 大小:0 Kb 临时文件: 存储在: 但文件不存在。 我想也许它可能是HTTP协议,但我不知道该怎么做。 你能告诉我细节吗? 非常感谢。 #include #include #include #include #include #include #include #include #include #include #include #include int main(){ int sockfd, numbytes; FILE *fp; char buf[300]; char filename[10]=”1.jpg”; char send1[100]; […]

在PHP,WordPress,phpMyAdmin,C,i18n,L10n等双下划线?

引用另一个在此结束我的问题。 这些PHP代码行中的双重下划线是什么意思? $WPLD_Trans[‘Yes’]=__(‘Yes’,$WPLD_Domain); $WPLD_Trans[‘No’]=__(‘No’,$WPLD_Domain); 关于在Wordpress等中使用__() , _()等的相关问题。 作为上述一个答案开始,和其他相关。 但是作为自己的问题(带答案)发布,因为它变得更加详细。 请随时编辑和改进 – 或输入更好的答案/问题。

在PHP应用程序中使用C进行计算:值得吗?

我有一个PHP应用程序,有时需要大量的计算(我搜索用户记录的操作,并在很长一段时间内进行大量的经济学分析)。 我想提高这些计算的速度,是否值得用C重写这些计算部分? (在这里速度较快的语言中,C是我最了解的语言)。 我已经决定这样做,但当我在寻找“怎么做”时,我发现了这个Stack Overflow问题 。 有人评论说“ 为什么不用PHP或C编写整个网站/页面? ”我知道我需要额外的信息。

是否可以在Haskell中创建PHP扩展?

是否可以使用Haskell创建PHP扩展? 通常PHP扩展是使用C编写的。使用Haskell FFI来提供存根C扩展的function(甚至是个好主意)? 这种方法有什么警告? Zend是否会在后台执行一些会破坏这种方案的魔法?

如何将数组作为Object属性添加到PHP扩展中声明的类?

我希望我的PHP扩展声明一个等效于以下PHP的类: class MyClass { public $MyMemberArray; __construct() { $this->MyMemberArray = array(); } } 我正在按照“ 高级PHP编程 ”和“ 扩展和嵌入PHP ”中的示例进行操作,并且我能够在PHP_MINIT_FUNCTION声明一个具有整数属性的PHP_MINIT_FUNCTION 。 但是,当我使用相同的方法在PHP_MINIT_FUNCTION声明一个数组属性时,我在运行时收到以下错误消息: PHP Fatal error: Internal zval’s can’t be arrays, objects or resources in Unknown on line 0 高级PHP编程的第557页有一个例子,说明如何声明一个创建数组属性的构造函数,但示例代码不能编译(第二个“对象”似乎是多余的)。 我修复了错误并将其修改为我的代码: PHP_METHOD(MyClass, __construct) { zval *myarray; zval *pThis; pThis = getThis(); MAKE_STD_ZVAL(myarray); array_init(myarray); zend_declare_property(Z_OBJCE_P(pThis), “MyMemberArray”, sizeof(“MyMemberArray”), myarray, ZEND_ACC_PUBLIC […]

哪种Web开发语言最适合C程序员?

题 我定期在* n * x环境中用C(ANSI C89 / ISO C90)编程。 我现在处于一个有利于我学习网络开发语言的位置。 特别是,我希望学习一种语言: …利用我作为C程序员的背景。 …可以产生像stackoverflow.com这样的网站的交互性水平。 我听到很多关于PHP的好东西。 你们有没有其他建议? 笔记 我熟悉的其他语言:Java,Perl,Tcsh和Scheme。 我忘了提到我有兴趣学习一种能够在客户端做事的网络开发语言。 如果不清楚,我很抱歉。 我计划利用我对该语言的了解来开发一个与stackoverflow.com风格相似的网站(当然,这个网站的概念非常不同)。

哪里可以找到“低内存”和“空闲CPU周期”调用,在unset()上触发垃圾回收?

我经常发现在解释PHP unset()不会立即触发“垃圾收集”时使用以下引用的引用,但只有当它看起来合适时(强调我的): unset()正如它的名字所说 – 取消设置一个变量。 它不会强制立即释放内存。 PHP的垃圾收集器会在看到拟合时执行它 – 尽快意图,因为无论如何都不需要那些CPU周期 ,或者在脚本耗尽内存之前 ,无论先发生什么。 如果你正在做$ whatever = null; 那么你正在重写变量的数据。 您可能会更快地释放/缩小内存,但它可能会更快地从真正需要它们的代码中窃取CPU周期,从而导致更长的总体执行时间。 我想知道这个“低内存”和“自由CPU周期”触发垃圾收集的C代码是如何工作的,以及它是否在PHP 5.2.x和PHP 5.3+之间有所不同。 所以我下载了PHP 5.2.17的C源文件,并尝试找到正确的代码部分。 也许我只是失明,或者我的C技能太低,但我找不到这样的代码。 有人能指出我正确的C文件吗? 编辑 : 在搜索上述引用的例子时,我意识到一些奇怪的东西。 一些示例,如https://stackoverflow.com/a/584982/693207 ,通过使用以下URL对php.net上的评论引用此引用: http : //us2.php.net/manual/en /function.unset.php#86347 。 浏览此URL仅显示unset()手册的顶部。 评论#86347不见了。 检查返回机器显示,该评论DID存在于2008年10月,但在2012年9月或之后的某个时间消失(原因未知)。 也许这句话是,而且一直都是,这是完全错的? 或者有谁在那里,谁能指出我正确的C文件?

从php加载c库

在最近的一个项目中,我真的需要lib tre匹配库。 然而,该项目是在PHP,并没有该库的PHP绑定。 我试图谷歌如何为c库创建一个接口,但我找到的只是dl函数接缝只加载php扩展。 我错过了什么?

PHP的password_verify()是否可以安全地防止超长密码(DoS攻击)?

一般攻击情形: 在2013年,Django有一个普遍的漏洞,因为攻击者可以通过非常大的密码创建极其强大的CPU计算[ 请参阅此处的安全声明 ]。 我不确定在使用PHP的password_verify()和其他密码散列方法时是否仍然可以进行此操作而无需进一步检查。 PHP文档说: 对algo参数使用PASSWORD_BCRYPT将导致密码参数被截断为最大长度为72个字符。 但是,PHP的代码MAYBE说了一些不同的东西: 然而,PHP 5.5.0的password_verify()函数背后的C代码并不直接限制传递的参数(可能在bcrypt算法的更深层次上?)。 此外, PHP实现不限制参数。 问题是: password_verify() (以及相同function集的其他function)是否通过最大化POST参数容易受到DoS的攻击? 还请考虑POST上载大小远大于4MB的站点范围配置情况。