发布时间:2009-11-17 11:15 作者: PHPChina 信息来源: PHPchina 发表评论
1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;
2.echo的效率高于print,因为echo没有返回值,print返回一个整型;
3.在循环之前设置循环的最大次数,而非在在循环中;
4.销毁变量去释放内存,特别是大的数组;
5.避免使用像__get, __set, __autoload等魔术方法;
6.requiere_once()比较耗资源;
7.在includes和requires中使用绝对路径,这样在分析路径花的时间更少;
8.如果你需要得sexinsex到脚本执行时的时间,$_SERVER['REQUSET_TIME']优于time();
9.能使用字符处理函数的,尽量用他们,因为效率高于正则;//php100.com
10.str_replace字符替换比正则替换preg_replace快,但strtr比str_replace又快1/4;
11.如果一个函数既能接受数组又能接受简单字符做为参数,例如字符替换,并且参数列表不是太长,可以考虑多用一些简洁的替换语句,一次只替换一个字符,而不是接受数组做为查找和替换参数。大事化小,1+1>2;
12.用@掩盖错误会降低脚本运行速度;
13.$row['id']比$row[id]速度快7倍,建议养成数组键加引号的习惯;
14.错误信息很有用;
15.在循环里别用函数,例 ......
JSON 是一项旨在允许中间件创建使用 JavaScript 固有格式的对象的协议。它最强大的属性是它是一种轻量级协议。简单处理 RSS 聚合或 recipe 列表时,您不需要在 JavaScript 中使用 XML 的全部功能。不需要验证格式或确保严格的数据键入。
编码和解码
有两个函数用于 JSON:encode 和 decode。第一个函数将把任意类型的数据对象转换为一组序列化数据,以供 JavaScript 处理。第二个函数将把序列化数据解码,并将其转换为基本 PHP 对象或联合数组。我们来看一看 json_decode()。
json_decode() 的示例
<?php
$jsonObject = '{"21":{"url":"www.blah.com\/story1.html","title":"JSON is sweeping AJAX world","viewed":false},"22":{"url":"www.blah.com\/story2.html","title":"JSON is great","viewed":false}}';
$decodedObject = json_decode($jsonObject);
$decodedArray = json_decode($jsonObject, true);
print_r($decodedObject);
echo "<br><br>";
print_r($decodedArray);
?>
如上,我们有一个 PHP 脚本,该脚本将获取 $jsonObject 并将其解码回 PHP 固有对象。我们进行了两次解码。第一次,使用未经修改的用法,这将得到 stdClass ......
接收xml:
$xml = file_get_contents('php://input');
发送(post):
$xml_data = <xml>...</xml>";
$url = http://dest_url;
$header[] = "Content-type: text/xml";//定义content-type为xml
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_data);
$response = curl_exec($ch);
if(curl_errno($ch))
{
print curl_error($ch);
}
curl_close($ch);
或者:
$fp = fsockopen($server, 80);
fputs($fp, "POST $path HTTP/1.0\r\n");
fputs($fp, "Host: $server\r\n");
fputs($fp, "Content-Type: text/xml\r\n");
fputs($fp, "Content-Length: $contentLength\r\n");
fputs($fp, "Connection: close\r\n");
fputs($fp, "\r\n"); // all headers sent
fputs($fp, $xml_data);
$result = '';
while (!feof($fp)) {
$result .= fgets($fp, 128);
}
return $result;
......
引用地址:http://club.topsage.com/thread-263331-1-1.html
迅雷专链 PHP视频教程_01第一章了解PHP
迅雷专链 PHP视频教程_02第二章PHP语法结构
迅雷专链 PHP视频教程_03第三章PHP函数库
迅雷专链 PHP视频教程_04第四章了解MySQL
迅雷专链 PHP视频教程_05第五章MySQL语言结构
迅雷专链 PHP视频教程_06第六章MySQL数据类型06
迅雷专链 PHP视频教程_07第七章MySQL函数
迅雷专链 PHP视频教程_08第八章MySQL数据操纵语言DML
迅雷专链 PHP视频教程_09第九章MySQL数据定义语言DDL
迅雷专链 PHP视频教程_10第十章MySQL用户实用命令
迅雷专链 PHP视频教程_11第十一章MySQL事务与锁定
迅雷专链 PHP视频教程_12第十二章MySQL全文检索
迅雷专链 PHP视频教程_13第十三章MySQL查询缓存
迅雷专链 PHP视频教程_14第十四章MySQL数据库管理
迅雷专链 PHP视频教程_15第十五章计数器
迅雷专链 PHP视频教程_16第十六章PHP实现文件上载
迅雷专链 PHP视频教程_17第十七章时� ......
php 中生成随机字符串的方法
2009-10-20 13:56
在一些特殊应用中,需要生成随机字符串,比如生成系统随机密码或者是登陆验证码等,本文介绍的函数能够返回指定长度的随机字符串,默认包含大小写字母和数字,你可以很容易的修改以便符合自己的需要。
<?php
// 说明:php 中生成随机字符串的方法
// 整理:http://www.CodeBit.cn
function genRandomString($len)
{
$chars = array(
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
"w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",
"S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2",
"3", "4", "5", "6", "7", "8", "9"
);
$charsLen = count($chars) - 1;
shuffle($chars); // 将数组打乱
$output = "";
for ($i=0; $i<$len; $i++)
{
$output .= $chars[mt_rand(0, $charsLen)];
}
return $output;
}
$str = genRandomString(25);
$str .= "<br />";
$str .= genRandomString(25);
$str .= "<br />";
$str .= genRandomString(25) ......
数学函数
Abs
函数描述:mixed abs(mixed number);
返回值:函数abs返回参数number的绝对值。
Acos
函数描述:double acos(double number);
返回值:函数acos返回参数number的反余弦值。如果参数number大于1或小于1,
则其反余弦值无意义 。
Acosh --
反双曲余弦
Asin
函数描述;double asin(double number);
返回值:函数asin返回参数number的反正弦值。如果参数number大于1或小于1,
则其反正弦值无意义 。
Asinh --
反双曲正弦
Atan
函数描述:double atan(double number);
函数atan返回参数number的反正切值。
Atan2
函数描述:Double atan2(double x , double y);
返回值:函数atan2返回由直角坐标系指定的座标点在极座标系中的角度的弧度
值。
Atan --
反正切
Atanh --
反双曲正切
BinDec
函数描述:int bindec(string binary_number);
返回值:函数bindec返回一个用二进制数写成的字符串binary_number的整数值
。PHP使用32位带符号的整数,其二进制数的第一位是符号位。
Base_convert --
在任意进制之间转换数字
Ceil
函数描述:int ceil(double number);
返回值:函数ceil返回大于参数number 的最小整数;若number为整数。 ......