Tag: PHP
在网上的服务器监测程式有很多, 功能都十分完善, 但如果你像我一样只要监测服务器是否 down 机, 而且全都是 httpd 服务器, 可以透过 PHP 简单实现, 例如这样就可以很简单地看到服务器是否可以连接: 当然上面的程式很阳春, 只会印出服务器是否可以连接, 而且只可以人手打开上面 PHP 网页才可以监测。其实只要透过 crontab 自动执行 PHP, 就可以让 PHP 自动监测服务器, 并在发生问题时以电邮通知管理员。另外也可以在要监测的服务器上放一个细小的 PHP 程式, 会印出系统的 load average, …
在 PHP 要读取 CSV 档案可以使用内建的 fgetcsv() 函式, fgetcsv() 可以读取 CSV 档案并逐行放到 array 里面, 假设以下为 CSV 档内容: “User1″,”user1@domain.com” “User2″,”user2@domain.com” “Hello123″,”hello123@domain.com” 如果 CSV 档案每行多一个字段, 做法也差不多, 例如 CSV 档内容: “User1″,”user1@domain.com”,”HK” “User2″,”user2@domain.com”,”HK” “Hello123″,”hello123@domain.com”,”USA” …
用 PHP 发送纯文字 Email 很简单, 但如果要发送一封 HTML 格式的 Email, 只需要在 mail() 里面加入 MIME 版本及 Content-type header 就可以完成, 要注意的是如果发送的是中文电邮, 需要指定使用的 charset, 以下是发送 HTML Email 简单的例子: 以上用的方法是直接使用 mail() 函式, 再定义 MIME …
PHPMailer 是大个功能强大的 PHP 电邮 class, 而且使用十分简单, 原本要多行程式码才可以完成关于电邮的工作, 用 PHPMailer 只要几行就完成, 以下是用 PHPMailer 发送带附件电邮的方法: 1. 到 http://github.com/PHPMailer/PHPMailer 下载 PHPMailer. 2. 将 PHPMailer 放到服务器后, 在程式加载 PHPMailer 就可以使用, 以下是使用例子: 以上程式码会发送电邮到 to@emailaddress, 并加入 …
PHP 连接 MySQL 可以很简单直接地 mysql_connect() 或 mysqli_connect(), 那么为什么是要 PDO? PDO 是功能更为强大的数据库 API, 即使将来要转换数据库系统, 只需更改连接的参数, 不需每个出现 mysql_* 函式的程式码都修改, 以往要做到这样, 通常是写一个简单的连接 MySQL class, 或者直接用 ADOdb 之类来做。 另一个优点是 PDO 会自动将用户的输入清理干净, 即防止 SQL …
要储存一些敏感的资料在档案或数据库, 基于安全考虑还是将资料加密, 在需要时再进行解读, 在 PHP 5.5 开始内建了加密函式 password_hash(), 操作上简单了不少。如果在其他 PHP 版本, 便需要加载加密的相关模组, 以下是不同版本实现的方法: PHP 5.5 或以上: 要验证用户输入的密码, 可以用 password_verify(): 未到 PHP 5.5, 但在 5.3.7 或以上 (包括 Redhat PHP 5.3.3 …
PHP 在 5.3 前要计算日期很麻烦, 在 PHP 5.3 开始已经内建相关函式, 计算日期变得简单很多, 例如要计算两个日期的差距, 可以这样: 而且输入的日期格式限制很少, 例如上面的日期格式可以输入 2015-05-12, 或者 12-05-2015 也可以。 上面的例子是计算两个日期相距的天数, 如果要计算往后 X 天的日期, 可以这样做:
要检查 Email 及 URL 格式可以用正规表达式来做, 以下两个正规表达式分别可以检查 Email 及 URL 的格式是否正确。但要留意, 以下程式码只会检查格式, 而不会检查两者的有效性, 要检查有效性及真实性需要用其他方法。 PHP 检查 Email 格式 PHP 检查 URL 格式
PHP 执行时如果出现 Allowed memory size of xxxxxx bytes exhausted 错误, 即执行 PHP 时使用过多内存, 起出了 php.ini 设定的限制, 解决方法是修改 php.ini 的 memory_limit 参数, 如果是 Redhat / CentOS / Fedora 用 yum …
PHP 内建变量包含多种不同资讯, 其中包括网址的部份, 使用上十分简单, 只要直接调用即可: 例如网址是 http://www.phpini.com/dir123/test.php?pid=123 上面的网址会分为几个变量: 要取得目前网址, 其实只要用 $_SERVER 及 $_SERVER, 例如: 但 http:// 通协定部份不可以直接调用, 要用 if 判断一下, 可以这样写: