OS X 下本地调试

启用 apache、php

参考链接: https://fqk.io/mac-os-php-apache/

OS X - MySQL 的安装

下载地址: http://dev.mysql.com/downloads/

  • MySQL Community Server

Redis 新建端口

Redis 的安装: https://fqk.io/redis-installation/

根据安装 Redis 的流程,将默认的端口号 6379 改为替换为新的端口号即可。

以 Ubuntu 为例,在执行上述标准配置之后,一键新建端口脚本(保存,用 sudo 执行)

Redis 的安装

apt-get、yum、homebrew 这些包管理工具为我们安装软件带来许多便利,然而也有一些弊端:

  • 不同的包管理工具规则不一,比如安装路径、配置文件路径、启动方式不同;而很多情况下,开发者对包管理工具只是停留在使用的级别,并不能完全掌握各工具的规则;于是就会导致软件扩展不便

SVN 使用规范

以下为个人总结。

内容规范

  • 代码库中不要提交和本地环境相关的文件。如Android工程中的local.properties(内含本机SDK的绝对路径),如果此类变量和开发代码有所耦合,应该抽离出来。

Shell - 全局查找字符串

指定字符串(支持正则),检查某目录下所有子文件内容中是否包含此字符串;若包含,则输出文件以及内容。

为何不用管道符号直截了当?考虑到find出来的文件路径可能包含空格,故需要指定回车去作为分隔符。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash

KEY_WORD=$1
if [ -z "${KEY_WORD}" ]; then
echo '缺少关键词'
fi

DIR=$2
if [ -z "${DIR}" ]; then
echo '缺少目录'
fi

IFS='
'

files=`find "${DIR}" -type f`

for file in ${files}; do
info=`grep -in "${KEY_WORD}" "${file}"`
if [ ${#info} -gt 0 ]; then
echo "============================================"
echo "file path: ${file}"
echo "${info}"
fi
done
echo "============================================"

一些数学题

摘录一些数学题,不定期更新。

浮躁的时候思考一下,看看是会冷静下来,还是会更浮躁……

1 . 想一下 200 的正约数 1、2、4、……、100、200,然后回答下列问题。

  • 约数之和 S,请对 S 进行质因数分解。

PHP 编码规范

约定大约规范…… 以下为笔记,虽然有许多约定我并不认可。

文件格式

文件标记

1
2
3
4
5
6
7
8
9
// 完整PHP标签
<?php
echo 'Hello world!';
?>

// 短标签
<?
echo 'Hello world!';
?>

PHP 模板引擎的原理

代码分层的思想

PHP 作为轻巧灵活的脚本语言,非常适合 Web 开发这种开发周期短、需求变化快、强调用户体验的需求和业务。PHP 开发早期,通常都是 PHP 代码与 HTML 混写,代码中充斥着数据库操作、逻辑判断、HTML 代码生成,甚至 JavaScript 代码等。当项目规模不大时,这种编程风格能够很快地完成需求。但是一旦项目规模扩大后,再加上前端逻辑越来越复杂,这种完全混写的方式必将带来代码可读性差和后期维护困难等问题。

数据库应用优化

基本语句优化的10个原则

  1. 尽量避免在列上进行运算,这样会导致索引失效
  2. 使用JOIN时,应该用小结果集驱动大结果集。同时把复杂的JOIN查询拆分成多个Query。因为JOIN多个表时,可能导致更多的锁定和堵塞。