分类文档:编程 195篇

“您的PHP似乎没有安装运行WordPress所必需的MySQL扩展”的通用根治办法(多系统完整版)
2019年10月08日 13:20

(本文的办法只限Linux主机) 虽然我不是Wordpress的用户,但是调试MySQL最好的办法是安装Wordpress,所以我会隔一两年、几年在本机安装Wordpress。出现“您的PHP似乎没有安装运行WordPress所必需的MySQL扩展”,虽然是一个公认的老掉牙的问题,我为了开发一键LAMP/LNMP的MySQL安装部分,经过这几天的多系统调试,发现出现这个提示,并没有大家想象中的简单,是一个有些复杂的问题,尤其是现在到了PHP 7更容易出现这个报错。……

固定链接 | 发表评论(1) | Trackback(0)

为什么近期的Shell命令每行都有分号?
2019年09月26日 10:02

单独一个Shell命令,分号可有可无。多个Shell命令可以放在一行里,多个命令之间用分号隔开,一次复制,然后回车。近期发的Shell命令,很多单独的一个命令,也有分号。

这是因为这些命令是从我编写的LAMP/LNMP一键Shell命令里复制的,由于时间的关系,来不及一一删除分号。这个一键命令是经过大量调试而写成的成品。它目前分为3大部分(3个文件),对外链接、主程序(生成Ubuntu/Debian/CentOS不同系统版本相应的一键Shell命令,由PHP+Shell完成)、后期优化程序。……

固定链接 | 发表评论(2) | Trackback(0)

成功的路上总是困难重重、千辛万苦
2019年09月11日 09:23

我从3年多以前开始用VPS之后,从那时开始学习、使用Shell命令、Shell编程。Shell命令具有最高权限,但是其功能远远不如PHP等编程语言。比如需要用命令自动修改某个文件,PHP等大多数编程语言只需打开文本文件、替换、写入这3个步骤。Shell编程要实现这3个步骤,会遇到各种困难,至今3年多,这个问题仍然没有完美解决,其困难如下:……

固定链接 | 发表评论(2) | Trackback(0)

开发VPS一键安装PHP环境的难题(2)
2019年09月02日 20:23

最大的难题仍然是VPS每月的重装次数严重不够用,每个VPS每月只能重装30次。今天发现KVM和OpenVZ的配置有一定的区别。我现在手里共有9个VPS,有几个是闲置、或半闲置状态,这几个都是KVM。OpenVZ空间反而一个闲置的都没有,所以必须腾出OpenVZ空间,今天把2个空间的站点互换、迁移,手动操作竟然持续了将近2个小时,太折腾了。……

固定链接 | 发表评论(0) | Trackback(0)

开发一键Shell命令安装VPS的PHP环境遇到的几个难题
2019年08月31日 12:51

兼容所有的系统,是巨大的挑战,也很可能是不可能完成的任务,只能做到尽可能兼容。这个自编的纯净版一键Shell命令,用了2年多,真的很好用,省去了我很多麻烦。因为我过去只用Ubuntu 12、CentOS 5,所以一直以来只兼容这2个系统。到了要发布的时候,需要兼容大多数的系统。这几天,为了测试,必须用真机重装系统,已经重装不下60次系统,VPS每月只能重装30次,其中有一个本月已经用完30次。……

固定链接 | 发表评论(0) | Trackback(0)

第3版的LAMP/LNMP一键安装+优化的Shell命令留念和详解
2019年08月29日 17:59

这个第3版的LAMP/LNMP纯净版的一键安装命令,是这几天重新编写,将会放在Webshu平台。此时已经能够完美兼容Ubuntu 12/14/16/18/19,以及Debian 7/8/9。但是今天发现有个小问题,Debian 9在两家不同服务商的VPS下,有一个VPS完美运行,另一个VPS安装遇到些问题。有可能是问题出在Debian 9.9的apt-get命令必须改为apt,所以今天尝试把这个命令在Linux命令行下设置为一个变量$apx,让其在Ubuntu 18和Debian 9.9下自动变成apt。……

固定链接 | 发表评论(0) | Trackback(0)

如何编写VPS的LAMP/LNMP的一键安装命令
2019年08月27日 08:01

Linux比Windows服务器好的一点是,Linux可以编写一键shell命令,让它全自动安装。基本的方法是,命令之间用分号;,或者&&号隔开;shell也有很多需要应答的场景,例如需要输入Y,或者输入Yes,或者需要按回车。需要输入Y,大部分是install命令,可以事先给install命令加个-y,如apt-get -y install ……,yum -y install ……。……

固定链接 | 发表评论(2) | Trackback(0)

解决PHP 7等web编程语言不报错一例
2019年07月28日 07:07

PHP的开发者必须尽快转到PHP 7平台,因为原来在PHP 5下开发的程序,有很多在PHP 7下都会报错。PHP 5的程序改为PHP 7的写法,工作量是很大的,所以开发者只能一步到位转到PHP 7平台。

PHP 7增强了数据类型;数组与变量名不能同名,如果同名,需要用$a1=array();给数组$a1清空即可解决报错,PHP 5时只要用$a1='';即可清空数组;PHP 7如果直接引用、或者判断符合条件才赋值的变量时,会报错,解决办法是提前声明这个变量,PHP 5时则不需要声明。……

固定链接 | 发表评论(4) | Trackback(0)

常用技术分享:PHP 5和PHP 7在开发中最常遇到的兼容性写法总结
2019年06月30日 11:41

PHP 7引入了强类型,在报错方面比PHP 5严格了很多。所以,很多PHP 5下开发的程序,到了PHP 7会有各种报错、无法运行。其实,只要稍加改动,原来的PHP 5程序就可以兼容PHP 7的语法,但无疑改动的工作量是难以估计的,需要对每个模块都重新测试。这种改动不像前端设计所见所得,程序由于模块数量庞大,可能会有少量改动不彻底而引发bug。……

固定链接 | 发表评论(10) | Trackback(0)

PHP 7.X、PHP的报错日志测试结果记录
2019年06月22日 12:49

PHP 7.X的报错规则比PHP 5.X严格很多。测试结果是为了试验error_reporting(0);能否彻底关闭报错日志,以防止用户的错误日志的增加,测试结果是肯定的。测试平台为Ubuntu 16+Apache+PHP 7.2。共写入这4个php测试文件:

1.php……

固定链接 | 发表评论(2) | Trackback(0)

Feedval程序已经开始修改为PHP 7的写法(Feedval开发实况24)
2019年06月21日 16:17

Feedval目前在PHP 5.X可完美运行。PHP 7.0应该也可以运行,暂不支持PHP 7.1和之后的版本。已经开始全力修改,使其能够兼容PHP 7.1~最新的PHP 7.3。

经过几天的持续调试,我的电脑终于完成PHP 7.X的环境安装+一键还原。昨晚排查出了PHP 5.X和PHP 7.X写法的不同,主要是由于从PHP 7.1开始,其报错规则非常严格。只要一个变量不存在,当调用它时,就会报错。数组的名称,也不能与已有的变量同名(如果有,PHP 7.X必须先清除数组)。这种严格的报错规则,多见于其它的语言。PHP之所以让开发者感到轻松,就是因为无需每次都声明变量。……

固定链接 | 发表评论(4) | Trackback(0)

PHP 5.X和PHP 7.1写法的2个不同(修改需要庞大的工作量)
2019年06月20日 22:42

这几天经过很多波折,终于把Win 10+PHP 7.1的工作平台搭建完成。作为开发平台,Win 10操作系统,在很多方面都远不如XP好用。目前,XP、Win 7都无法安装PHP 7.X。我原来在PHP 5.X编写的程序,在PHP 7.1都无法运行,在PHP 7.0下运行正常。今天经过排查,终于找到了原因。由于写法不同,导致PHP 5.X下编写的程序,无法在PHP 7.1下运行。……

固定链接 | 发表评论(4) | Trackback(0)

漫长的PHP 7.X安装之坑的困境详解
2019年06月14日 10:02

因为从PHP 7.1开始,PHP的解释器做了很大的改动,导致原来的很多PHP程序无法在PHP 7.1及之后的版本运行。如果作为为用户提供程序、非自用的开发者,为了争取更多用户,有必要跟进新的平台。经过2天的安装,基本上已经完成了PHP 7.1~7.3的安装。PHP 7.X的安装,没有想象中的顺利。为了完成PHP的开发,我的电脑不得不使用4块硬盘,安装了4个系统。……

固定链接 | 发表评论(12) | Trackback(0)

博客的优美之处在于记录真实的事情和想法,记录PHP 7.1、HTML 5遇到的困扰
2019年06月12日 10:42

个人的力量无法去阻挡时代的变化,正如房价的变化。本博客这些年来,随着博客的不断撰写,会产生很多新的思考、想法和发现。其中一个重要的发现是,很多事情、技术并不会因为时间的推移,就必然会进步。很多好的技术、观念,都随时可能被遗忘、失传,这样的事情细想一下,数量十分惊人,有可能超过半数。……

固定链接 | 发表评论(4) | Trackback(0)

常用技术分享:JavaScript的onclick的一个bug和解决
2019年06月08日 09:21

<input>如果有默认的字符提示,当点击时需要清除默认字符,例如我编写的这个页面 http://cn.blogval.com/author/ 。如果只用onclick,会发现如果此时按鼠标右键,或者在手机上直接长按,默认字符都不会清除。

这是onclick的一个bug。解决办法,在<input>里,除了写onclick,再同时写一个onfocus的语句。……

固定链接 | 发表评论(0) | Trackback(0)

必成技术分享:PHP获得服务器本机IP的思路
2019年06月08日 07:40

最近我在Eonval项目开发中需要此功能,但PHP自身无法获取服务器本机IP。想要获取服务器本机IP,有很多种方法,比如需要时我会想这2个办法,都需要调用Linux主机的shell命令来实现。这2个办法都必须使用唯一的这个函数shell_exec(''),它是返回Linux主机的shell结果的所有行,且将结果传给一个变量,再用PHP分析运行结果,从运行结果中提取出服务器的IP地址。……

固定链接 | 发表评论(0) | Trackback(0)

博客防止spam的新方案分享,十分有效:单篇设置验证码
2019年05月14日 07:36

本文的spam,专指有一种来自国外的评论,每条评论内容里有10多个链接,语言是英文或者其它语言(类似德语、法语),发在中文博客里。我的博客当初开通一两年之后,评论里就开始有这类spam,几乎一两天内就有。

当时想了很多办法,最后非常无奈只好全站开启验证码,效果立竿见影。这一两年,为了用户体验,去掉了验证码。我发现spam总是发在那几篇博客里,所以把那几篇博客都关闭了评论。spam突然沉寂了很久,这几天又多了起来。……

固定链接 | 发表评论(5) | Trackback(0)

程序员/程序设计者的智商高吗?记忆力强吗?
2019年05月05日 09:34

这是几个月前在v2ex出现过的一个问题。我不能给出一个明确的答案,因为这个问题本身是没有结果的。智商高不高不敢说,但是从这种很特殊的职业性质来看,和别的职业有很大的不同:每天需要实际去解决在程序中的这个“现实”的问题,程序只要错一个字符,会导致整个程序无法正常运行,是极其精密的。由于长期处于这种身经百战的环境中,解决问题已经成为习惯。(智商、智慧的本质就是能够解决问题。)……

固定链接 | 发表评论(4) | Trackback(0)

回忆2001年左右的一位真正的早期电脑牛人(谈如今开发者的移动办公平台)
2019年04月29日 13:41

大约在2001年的时候,我在论坛看过网友发的一张图片,就是国外有个人,背着一台台式机+15英寸球面显示器,走在户外。因为那个时代的笔记本电脑,相当昂贵,约合人民币1万多~2万元,奔三处理器。现在在街上,很难见到这样的场景,因为大部分人都使用手机上网。然而,对于开发者,这个场景可能会再次重现。……

固定链接 | 发表评论(2) | Trackback(0)

https,想说爱你不容易
2019年04月27日 09:33

如果一个博客,一两个网站都启用https,影响不大。https,整页加密传输,防劫持,好看,跟得上趋势。但是对于多站点、多二级域名的项目,当达到50~100个以上的域名/二级域名,那么https的管理(包括安装、续期、定期检查),无疑是一场灾难,占用很多服务器资源和维护时间。这也是为什么我尽量使用http,而且鼓励使用http。……

固定链接 | 发表评论(11) | Trackback(0)

中国和美国的互联网技术、软件水平相比
2019年04月10日 07:43

昨天在v2ex看到这个帖子:https://www.v2ex.com/t/552910

我的回复:……

固定链接 | 发表评论(3) | Trackback(0)

JavaScript比PHP语句做得好的一个小细节实例
2019年03月31日 08:05

JavaScript这一种古老的语言,是目前唯一的网页前端编程语言,在2018年第1季度竟然排名为世界十大编程语言的第1名(新闻链接),这可能是由于JQuery的兴起。这个排名好像是受欢迎度、市场占有率,就像超级女声一样是通过投票的方式排名,但是排名不代表实力。在开发中,我个人感觉PHP很多方面比JS做得好,虽然语法几乎完全相同,PHP和JS之前我也写过几次对比(例如),它们在开发中的重要性,PHP应该在JS之前,PHP也比JS简洁很多。最近发现一个反例,这一点JS比PHP做得好。……

固定链接 | 发表评论(0) | Trackback(0)

开发中遇到的安全矛盾:URL超时的设置
2019年03月30日 09:03

通过给URL设置超时的时间,能使URL只要超过这个时间,则URL失效。超时的时间设置越短,则安全性越高,内部URL通常在30秒~180秒比较好,验证超时,时间是从服务器获取的。因为项目开发中,会涉及到用户的不同服务器的数据传输,为了避免一些服务器时钟误差的问题,不得不将超时时间设置为2小时。……

固定链接 | 发表评论(0) | Trackback(0)

程序开发中最尴尬的处境:就是不运行(更新解决方法)
2019年03月29日 09:35

昨晚写的在线更新的一个多行网址的验证功能,本来这个部分是比较简单的功能。语句明明都是正确的,但就是不运行,从昨晚临睡前到现在,为了处理这个问题,横竖左右各种办法来筛选错误所在,已经浪费了2个多小时,因为用的是top.abc.innerHTML,很难排查错误。以前遇到过很多次明明语句正确,就是不运行。要了老命了。……

固定链接 | 发表评论(0) | Trackback(0)

底层技术分享:PHP程序的代码如何加密
2019年03月29日 07:39

很简单,只需巧妙运用eval()函数,这个函数太重要了。方法是把源程序的字符在本机编写一个乱码器批量替换,在项目中做逆向还原,再被eval()函数调用。如果乱码太多的话,可能(可能性微小)会被某些杀毒软件报为病毒,为了避免这个问题,只需将一两个关键的PHP语句进行加密就足够

大多数的工程、成品源程序被解读是没有意义的,因为一是无法逆向还原开发现场的思路,二是解读程序有可能比开发程序花的时间还长。因此,加密与否,很多时候并不重要。……

固定链接 | 发表评论(0) | Trackback(0)

https和iframe+JavaScript的一个重要测试、调试记录
2019年03月22日 20:57

https对于开发者而言,增加了很多不必要的工作量。在Eonval项目中,会用到很多的iframe+JavaScript。其中,有一些页面是提交后(如密码修改的功能),如果数据处理完毕,则跳转到相应的页面。https规定为iframe不能引用http的链接。

今天要做的测试是,iframe内的内页,需要用top.location.href的方法让父页跳转。测试中,如果父页是https,内页是可以用top.location.href跳转到http的站外链接正好这条路没有堵死。如果将来堵死了,只能再多增加一个手续,先让top.location.href跳转到站内的https的一个页面A,页面A再跳转到站外的http或https链接。……

固定链接 | 发表评论(2) | Trackback(0)

开发中遇到的PHP中的一个重要bug
2019年03月22日 07:47

虽然PHP的确是公认的最好的语言,最近10年的世界TOP 20编程语言(市场份额),PHP一直名列前10名。PHP为什么好呢?个人觉得,好就好在PHP的设计者,把web开发者在编程中能遇到的问题,大部分都想到了,是一种十分完整的语言(在PHP 5时就已经达到这种水平)。大部分问题,他都有了解决方案。所以我们在开发中,会感觉更加得心应手,这是一个优秀的语言具有的特征。且PHP的执行效率,处于相对中等偏上的水平(与Golang、Node.js这些运行更快的平台相比);PHP比另外几个最受欢迎的语言执行效率高。如果程序设计中,没有瓶颈的问题,PHP的效率还是很高的。……

固定链接 | 发表评论(0) | Trackback(0)

程序开发的周期和难度
2019年03月12日 10:21

经典的PHP程序,以Discuz、WordPress为例,一个人从0开始,编写指定的和官方版功能完全一样的程序,目测至少得6-12月。3-4个月,是不可能完成的,因为光是帐号功能的开发至少都得1、2个月。开发周期的缩短,是用加班、健康、视力暴降、血拼换来的,血拼的结果就是健康出现严重问题。

为什么以Discuz、WordPress为例?因为这2个程序是应用最广的开源程序、大家都知道的程序。以前我见过很多人有Discuz、WordPress二次开发的需求,我觉得这类程序如果需要二次开发,真不如从0重新编写一套论坛、博客程序来得方便。……

固定链接 | 发表评论(1) | Trackback(0)

平台的Cookies方案设定的纠结之处(体验设计)
2019年03月09日 08:10

Cookies的设定,始终是一个矛盾的问题。如今很多APP受到用户的欢迎,有一个重要因素是Cookies的保存时间相当长,每天可以免登录打开。过去很多私密内容的平台(如电子邮箱、论坛),Cookies时间都很短,现在Cookies的时间非常长。比如我在调试服务器发邮件中,必须用到国外邮箱接收(国内邮箱接收国外服务器的邮件太慢,要慢几分钟,一天要测试几十次),所以选用了Yahoo邮箱,Yahoo邮箱的Cookies时间很长(电脑版),可以很多天不用登录。……

固定链接 | 发表评论(0) | Trackback(0)

程序设计为什么总是会很慢很慢/为什么会有码农的说法?
2019年03月06日 15:17

无论怎样努力,速度总是有一个极限。一个看似并不复杂、心中已经有整体结构、并有把握能完成的项目,工作量常常会超出预期2-3倍。很多项目因为算法实在太多(巨量的任务),需要记很多东西,也常常会让人怀疑自己的记忆力。无论怎样努力,我常常每天至少要花费1/4以上的时间在解读昨天、以往自己写过的程序,1/3以上的时间在思考现在怎样写程序,有效的编程时间很难达到1/3。……

固定链接 | 发表评论(3) | Trackback(0)

1 2 3 4 5 6 7

下一页 | 末页 (共7页)

王志勇:1980-09-26 (39周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2019年09月
2019年08月
2019年07月
2019年06月
2019年05月
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2019 auiou.com All rights reserved.
此Blog程序由王志勇编写 已经发布在Arsue