随笔分类 - php
摘要:依赖管理 依赖和包管理库Composer/ Packagist:一个包和依赖管理器Composer Installers:一个多框架Composer库安装器Pickle:一个PHP扩展安装器其他的依赖管理其他的相关依赖管理Satis:一个静态Composer存储库生成器Composition:一个在...
阅读全文
摘要:在公司的发展中,保证服务器的可扩展性对于扩大企业的市场需要具有重要作用,因此,这对架构师提出了一定的要求。Octivi联合创始人兼软件架构师Antoni Orfin将向你介绍一个非常简单的架构,使用HAProxy、PHP、Redis和MySQL就能支撑每周10亿请求。同时,你还能了解项目未来的横向扩...
阅读全文
摘要:1.不要使用相对路径常常会看到:?1require_once('../../lib/some_class.php');该方法有很多缺点:它首先查找指定的php包含路径, 然后查找当前目录.因此会检查过多路径.如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.另一问题, 当定时任...
阅读全文
摘要:PHP是一种非常流行的开源服务器端脚本语言,你在万维网看到的大多数网站都是使用php开发的。本篇经将为大家介绍PHP开发中10个最常见的问题,希望能够对朋友有所帮助。 错误1:foreach循环后留下悬挂指针 在foreach循环中,如果我们需要更改迭代的元素或是为了提高效率,运用引用是一个好办法...
阅读全文
摘要:1.PHP 5.3中的新特性1.1 PHP 5.3中的新特性1.1.1. 支持命名空间 (Namespace)毫无疑问,命名空间是PHP5.3所带来的最重要的新特性。在PHP5.3中,则只需要指定不同的命名空间即可,命名空间的分隔符为反斜杆\。select.php[php]view plaincop...
阅读全文
摘要:从php5.3以后,php也可以使用lambda function(可能你会觉得是匿名函数,的确是但不仅仅是)来写类似javascript风格的代码:$myFunc = function() { echo 'Hello World';};$myFunc();当一个函数的参数是另一个函数(callba...
阅读全文
摘要:Customizing Zend Studio Using the Welcome PageZend Studioenables you to add or remove plugins from your product according to your preferences, allowing you to develop in a lighter and faster environment.Installing PluginsTo add plugins inZend Studio:From the Menu-bar, selectHelp | Welcometo open the
阅读全文
摘要:1、配置防火墙,开启80端口、3306端口 vi/etc/sysconfig/iptables-AINPUT-mstate--stateNEW-mtcp-ptcp--dport80-jACCEPT(允许80端口通过防火墙) -AINPUT-mstate--stateNEW-mtcp-ptcp--dport3306-jACCEPT(允许3306端口通过防火墙)特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面 添加好之后防火墙规则如下所示:# Firewall configuration written by syste.
阅读全文
摘要:本文全部采用yum进行安装, CentOs6.5 mini 版本。一、更改yum源为网易的源加快速度, 如果是从网易镜像下载的安装包,直接注释这几项也可以vim/etc/yum.repos.d/CentOS-Base.repo# 需要更改的项[base]baseurl = http://mirror.163.com/centos/$releasever/os/$basearch/[updates]baseurl=http://mirror.163.com/centos/$releasever/updates/$basearch/[extras]baseurl=http://mirror.163
阅读全文
摘要:服务器的PHP.ini的设置问题max_input_vars太小。
阅读全文
摘要:一句话总结 简单地总结:假如你想帮他尽快找个活儿,赚到钱,推荐PHP。假如你想让他成为一个高效工程师,推荐 Python。假如你想让他爱上他的工作,推荐 Ruby。 语言的选择 编程语言非常重要,不要认为他们都图灵等价,用起来都一样。实际上,好的语言,带给你的东西是超乎想像的。 下面是一些看法:程序员的时间远比机器的时间宝贵:选择开发效率最高的语言吧,不要过于在乎运行性能,如果你开发不出东西,那么跑得多快也没用。优雅的抽象胜于简单的堆砌: 这意味着你的代码是最简洁而又充满设计感的,面向对象,容易的闭包,一切都是表达式等等,而最好的抽象是语言本身能够分层,既能够书写语言的语言,比如 DS...
阅读全文
摘要:Memcache一般用于缓存服务。但是很多时候,比如一个消息广播系统,需要一个消息队列。直接从数据库取消息,负载往往不行。如果将整个消息队列用一个key缓存到memcache里面。对于一个很大的消息队列,频繁进行进行大数据库的序列化和反序列化,有太耗费。下面是我用PHP实现的一个消息队列,只需要在尾部插入一个数据,就操作尾部,不用操作整个消息队列进行读取,与操作。php-通过共享内存实现消息队列和进程通信的两个类0) { self::mqFrontChange($num); } return self::$m_data; ...
阅读全文
摘要:PHP是不支持线程的,但是我们有总想并行地干一些事情,比如,同时执行多个http的请求,如果使用多进程的话,有两个问题:1. 不能跨平台2. 创建进程的开销似乎大了些于是,我们就想到了使用异步来达到类似并行的效果,曾经早就写程序实现过,不过是很初级的,现在curl帮我们实现了,只是目前网上的文档还少一些,这个贡献一些。文档1:Let’s get one thing out in the open. Curl is sweet. It does it’s job very well, and I’m absoutely thrilled it exists.If you’re using cur
阅读全文
摘要:PHP5.3以后 For Windows 提供了四个版本VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe在官网左边栏有提示:Which version do I choose?If you are using PHP with Apache 1 or Apache2 from apache.org you need to use the VC6 versions of PHPIf you are using PHP with IIS you should use the
阅读全文
摘要:<?php/** * 此方法由@Tonton 提供 * http://my.oschina.net/u/918697 * @date 2012-12-12 */function genTree5($items) { foreach ($items as $item) $items[$item['pid']]['son'][$item['id']] = &$items[$item['id']]; return isset($items[0]['son']) ? $items[0]['son
阅读全文
摘要:基础接口采用RESTful的形式封装,但切记RESTful只是一种风格。你可能需要了解,如何通过PHP返回JSON数据。请参考这里1,这里2。本文档描述针对UCHOME的移动接口开发,所以,你还需要了解UCHOME的二次开发。请参考这里。原理把原有要在页面显示的内容根据移动端需要修改成返回相应的JSON。UCHOME是一个严格遵循MVC的框架。所以在编写移动 端API时,我们仅需要把View部分根据移动端需要转为返回JSON。通过分析在UCHOME主要产生View的部分有:通过showmessage语句产生通过include template语句产生为了简化操作,封装两个函数(见functio
阅读全文
摘要:1. 下载phpMyadmin2. 解压文件到/usr/share/nginx/html目录下,因为我安装到服务器是nginx,所以就解压到这下面3. 修改config.sample.inc.php 为 config.inc.php4.直接在url中输入:http://localhost/phpmyadmin, 出现了如下错误:Cannotstartsessionwithouterrors,pleasecheck原因是:php没有配置好。打开php.ini, 找到session.save_path 修改三个地方,并且保证这三个地方指定到目录存在,而且可以读写。重启php, systemctl
阅读全文
摘要:1. 安装Mysql5yum install mysql mysql-serverchkconfig --levels 235 mysqld on启动/etc/init.d/mysqld start查询是否启动netstat -tap | grep mysql无法启动mysql时vi /etc/my.cnf#skip networking重启mysql/etc/init.d/mysqld restart设置mysql密码:方法一:mysqladmin -uroot password方法二(设置根用户密码)(推荐):mysql_secure_installation系统自动启动mysql方法一(
阅读全文
摘要:具体的重现过程,用php代码修改后缀名后上传,比如说http://www.xx.com/1.jpg,访问的时候用http://www.xx.com/1.jpg/xxx.phphttp://docs.php.net/manual/zh/ini.core.phpcgi.fix_pathinfo “1″ PHP_INI_ALL 从 PHP 4.3.0 起可用 请注意:默认为1解决办法:1.修改php.ini中的cgi.fix_pathinfo为0(即使你在php.ini中没有搜到,也要设置,没有搜到表示默认为1)2.判断文件上传类型时使用严格的判断,至于怎么判断,参见:http://www.54ch
阅读全文
摘要:什么是CGI CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。 CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等什么是FastCGI FastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一次(这是 CGI最为人诟病的fork-and-execute 模式)。它还支持分布式的运算, 即 FastCGI 程序可以在网站服务器以外的主机上执行并且接受来自...
阅读全文
浙公网安备 33010602011771号