设为首页 收藏本站
查看: 510|回复: 0

[经验分享] PHP 编程一些及其细微的细节问题

[复制链接]

尚未签到

发表于 2017-4-9 06:23:35 | 显示全部楼层 |阅读模式
直接转的,未经验证。

/////////////////
Windows下,记事本会把“utf-8 编码,无 bom”的文件变成“带bom”,也就是给文件前加三个字节“EF BB BF”。因为好像记事本只能保存“带bom”的 UTF-8 的文件。切记!
经常会出现在:用记事本修改 PHP 的 config.inc.php 配置文件的时候。这时,因为config.inc.php一般包含在PHP文件的头部,所以 PHP 文件如果涉及 session 或 header() 函数,麻烦就来了。因为 session 或 header()之前不允许有 html 脚本,包括 echo 输出,而“EF BB BF”字符串虽然人眼不可见,但是 PHP 把它们当做 html 字符了。  /////////////////
UltraEdit 编辑器,能自动识别编辑的字符串是英文(单字节编码),还是中文(多字节编码)。而且 UltraEdit 编辑器以不定长编码保存文本。
比如,编辑的文本全部是英文,即使强制保存为 UTF-8,在 Windows 下也会自动保存为普通 DOS 格式的单字节文本文件。这时输入汉字,汉字还是双字节编码。
只有再次另存为 UTF-8编码,汉字才会变为 UTF-8 的三字节编码。而英文一直都会是单字节编码。这个通过 UE 的二进制编辑形式看的很清楚。
  //////////////////
<base target="_self" /> 是网页默认的配置,要是改为
<base target="_blank" />,会直接作用于<a>...</a>,而且会影响链接代码里的  函数。
  //////////////////
非常奇怪的问题:
  function $F(id)
{
return document.getElementById(id);
}
  $F(id) 是取 input 的 id 值的,在本地apache服务器上可以取 name 或 id 的值。
但是,代码上传到远程服务器上后,只能取 id 的值。(同一个浏览器!)
  本地服务器和远程服务器有差别??
  //////////////////////////////
MySQL 的 MyISAM 引擎的数据库,冷恢复后,如果有异常,应该把 MySQL 服务重新启动一下。
所以,MySQL 的脱机备份、恢复,最好在 MySQL 服务关闭后操作。
  //////////////////////////////
地址里带参数,特别如果是汉字,需要 ?c=urlencode(...),然后 urldecode($_GET['c'])
注意:UTF-8编码,在 IIS 下可以,在 Windows+apache下不行??
还和IE的设置有关:(IE8)高级--发送UTF-8 URL。
  //////////////////////////////
session[] 在后端用 ajax 调用生成时,如果立即调用session,可能会因为没有被生成:没有产生会话文件,而调用失败。
  //////////////////////////////
语句 header("Location:xxx.php"); 转向之后,应该还需要执行 exit 语句。
否则,还会执行到本页尾部(虽然眼睛看不到)。即:
header("Location:xxx.php");
exit;
  //////////////////////////////
同一个网站里,不要让网页重名。否则会因为在浏览器端有缓存,而错乱。 IE 和 chorom 浏览器都出现过该问题。
  //////////////////////////////
smarty 模版文件不能重名。否则会因为smarty在服务端有缓存,而导致错乱。
  ////////////////////////////////////
一个连接的 href="javascript:hanshu();" 和 jQuery 的click事件,有时可以同时被触发,但有时只触发一个事件,不稳定。
所以,不要在一个链接里同时使用 js 函数和 jQuery 点击事件!
  /////////////////////////////////
<select name="newgroupid">
<optgroup label="会员用户组">
<option value="10" selected>新手上路</option>
</optgroup>
<optgroup label="自定义用户组">
<option value="20">QQ游客</option>
</optgroup>
<optgroup label="自定义管理组">
<option value="16">实习版主</option>
<option value="17">网站编辑</option>
<option value="19">审核员</option>
</optgroup><optgroup label="系统用户组"><option value="2">超级版主</option>
<option value="3">版主</option>
<option value="4">禁止发言</option>
<option value="8">等待验证会员</option>
</optgroup></select>
  /////////////////////////////////////////////////
MySQL字符串型字段长度和汉字个数:
UTF8编码的字段,字段长度和保存的汉字个数相同。比如字段长度为6,就能保存6个汉字,而不是3个。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-362141-1-1.html 上篇帖子: php将二维关联数组转换成字符串 下篇帖子: php中文字符串截取函数支持多种编码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表