标签: php

用PHP将HTML + CSS转换为PDF?

我有一个HTML(不是XHTML)文档,可以在Firefox 3和IE 7中呈现.它使用相当基本的CSS来设置它并在HTML中呈现得很好.

我现在正在采用将其转换为PDF的方法.我试过了:

  • DOMPDF:表格存在很大问题.我考虑了我的大型嵌套表并且它有所帮助(在它消耗高达128M的内存然后死亡之前 - 这就是我对php.ini内存的限制)但是它使表格完全混乱并且似乎没有得到图片.这些表只是基本的东西,有些边框样式可以在不同的点添加一些线条;
  • HTML2PDF和HTML2PS:我实际上有更好的运气.它呈现了一些图像(所有图像都是谷歌图表URL),表格格式要好得多,但它似乎有一些复杂性问题,我还没有想到,并且因为未知的node_type()错误而死亡.不知道从哪里开始; 和
  • Htmldoc:这似乎在基本HTML上运行良好,但几乎不支持CSS,所以你必须用HTML做所有事情(我没有意识到它仍然是2001年在Htmldoc-land ...)所以它对我来说没用.

我尝试了一个名为Html2Pdf Pilot的Windows应用程序,它实际上做得相当不错,但我需要的东西至少在Linux上运行,理想情况下通过Web服务器上的PHP按需运行.

我错过了什么,或者我该如何解决这个问题?

html css php pdf pdf-generation

1585
推荐指数
27
解决办法
85万
查看次数

PHP中的startsWith()和endsWith()函数

我如何编写两个带字符串的函数,如果它以指定的字符/字符串开头或以它结尾,则返回?

例如:

$str = '|apples}';

echo startsWith($str, '|'); //Returns true
echo endsWith($str, '}'); //Returns true
Run Code Online (Sandbox Code Playgroud)

php string

1409
推荐指数
24
解决办法
81万
查看次数

如何在PHP中使用bcrypt进行散列密码?

我不时听到"使用bcrypt在PHP中存储密码,bcrypt规则"的建议.

但是什么bcrypt呢?PHP没有提供任何此类功能,维基百科关于文件加密实用程序的唠叨和Web搜索只是揭示了不同语言的Blowfish的一些实现.现在Blowfish也可以通过PHP获得mcrypt,但是如何帮助存储密码?Blowfish是一种通用密码,它有两种工作方式.如果它可以加密,则可以解密.密码需要单向散列函数.

解释是什么?

php passwords cryptography password-protection bcrypt

1230
推荐指数
9
解决办法
38万
查看次数

如何在PHP中进行重定向?

是否可以通过使用PHP将用户重定向到不同的页面?

假设用户去了www.example.com/page.php,我想将它们重定向到www.example.com/index.php,如何在不使用元刷新的情况下这样做?可能吗?

这甚至可以保护我的页面免受未经授权的用户

php redirect

1201
推荐指数
26
解决办法
271万
查看次数

require,include,require_once和include_once之间的区别?

在PHP中:

  • 什么时候应该使用require对比include
  • 什么时候应该使用require_once对比include_once

php require include require-once

1166
推荐指数
18
解决办法
56万
查看次数

UTF-8一路走来

我正在设置一个新服务器,并希望在我的Web应用程序中完全支持UTF-8.我过去曾在现有的服务器上尝试过此操作,但最终似乎不得不回归ISO-8859-1.

我在哪里需要设置编码/字符集?我知道我需要配置Apache,MySQL和PHP来执行此操作 - 是否有一些我可以遵循的标准清单,或者可能是在出现不匹配的地方进行故障排除?

这适用于运行MySQL 5,PHP,5和Apache 2的新Linux服务器.

php mysql linux apache utf-8

1146
推荐指数
13
解决办法
15万
查看次数

为PHP密码保护哈希和盐

目前据说MD5部分不安全.考虑到这一点,我想知道用于密码保护的机制.

这个问题,"双重哈希"密码是否比仅仅哈希一次更安全? 建议多次散列可能是一个好主意,而如何实现单个文件的密码保护?建议使用盐.

我正在使用PHP.我想要一个安全快速的密码加密系统.散列密码一百万次可能更安全,但也更慢.如何在速度和安全性之间取得良好的平衡?另外,我更喜欢结果具有恒定数量的字符.

  1. 散列机制必须在PHP中可用
  2. 它必须是安全的
  3. 它可以使用盐(在这种情况下,所有的盐都同样好吗?有没有办法产生好的盐?)

另外,我应该在数据库中存储两个字段(例如,一个使用MD5,另一个使用SHA)?它会使它更安全或更不安全吗?

如果我不够清楚,我想知道使用哪种散列函数以及如何选择好的盐以便拥有安全和快速的密码保护机制.

相关问题并不完全涵盖我的问题:

PHP中的SHA和MD5有什么区别
简单密码加密
存储密钥的安全方法,asp.net的密码
如何在Tomcat 5.5中实现salted密码

php security passwords hash protection

1142
推荐指数
13
解决办法
21万
查看次数

如何在PHP中获取客户端IP地址

如何使用PHP获取客户端IP地址?

我想记录通过他/她的IP地址登录我网站的用户.

php ip-address environment-variables

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

使用PHP"注意:未定义的变量","注意:未定义的索引"和"通知:未定义的偏移量"

我正在运行PHP脚本,并继续收到如下错误:

注意:未定义的变量:第10行的C:\ wamp\www\mypath\index.php中的my_variable_name

注意:第11行的未定义索引:my_index C:\ wamp\www\mypath\index.php

第10行和第11行看起来像这样:

echo "My variable value is: " . $my_variable_name;
echo "My index value is: " . $my_array["my_index"];
Run Code Online (Sandbox Code Playgroud)

这些错误消息的含义是什么?

他们为什么突然出现?我曾经使用这个脚本多年,我从来没有遇到任何问题.

我该如何解决?

这是一个一般参考问题,供人们链接到重复,而不是一遍又一遍地解释这个问题.我觉得这是必要的,因为关于这个问题的大多数现实世界的答案都非常具体.

相关元讨论:

php arrays variables warnings undefined-index

1119
推荐指数
20
解决办法
163万
查看次数

PHP和枚举

我知道PHP没有本机枚举.但我已经从Java世界习惯了它们.我希望使用枚举作为一种方式来提供IDE的自动完成功能可以理解的预定义值.

常量可以解决问题,但是存在名称空间冲突问题,并且(或实际上因为)它们是全局的.数组没有命名空间问题,但是它们太模糊了,它们可以在运行时覆盖,IDE很少(从不?)知道如何自动填充其键.

您是否经常使用任何解决方案/解决方法?有谁回忆一下PHP家伙是否对枚举有任何想法或决定?

php enumeration

1114
推荐指数
21
解决办法
47万
查看次数