search
Homephp教程php手册php.ini – 配置文件详解

php.ini – 配置文件详解
这里主要解释一下PHP.ini的一些配置解释!

[root@taokey ~]# grep -v “;” /application/php/lib/php.ini

[PHP]

engine = On ——→ 是否启用PHP解析引擎

short_open_tag = Off ——→ 是否使用简介标志

asp_tags = Off ——→ 不允许asp类标志

precision = 14 ——→ 浮点型数据显示的有效期

y2k_compliance = On

####是否强制打开2000年适应(可能在非Y2K适应的浏览器中导致问题)。

output_buffering = 4096 ——→ 输出缓冲区大小(字节)。建议值为4096~8192。

zlib.output_compression = Off ——→ 是否开启zlib输出压缩

implicit_flush = Off ——→ 是否要求PHP输出层在每个输出块之后自动刷新数据

这等效于在每个 print()、echo()、HTML块 之后自动调用flush()函数。打开这个选项对程序执行的性能有严重的影响,通常只推荐在调试时使用。在CLI SAPI的执行模式下,该指令默认为 On 。

unserialize_callback_func =

serialize_precision = 17

####将浮点型和双精度型数据序列化存储时的精度(有效位数)。默认值能够确保浮点型数据被解序列化程序解码时不会丢失数据。

allow_call_time_pass_reference = Off

####是否强迫在函数调用时按引用传递参数(每次使用此特性都会收到一条警告)。

; php反对这种做法,并在将来的版本里不再支持,因为它影响到了代码的整洁。

; 鼓励的方法是在函数声明里明确指定哪些参数按引用传递。

; 我们鼓励你关闭这一选项,以保证你的脚本在将来版本的语言里仍能正常工作。

safe_mode = Off ——→ 安全模式

safe_mode_gid = Off

safe_mode_include_dir =

#在安全模式下,该组目录和其子目录下的文件被包含时,将跳过UID/GID检查。换句话说,如果此处的值为空,任何UID/GID不符合的文件都不允许被包含。这里设置的目录必须已经存在于include_path指令中或者用完整路径来包含。多个目录之间用冒号(Win下为分号)隔开。指定的限制实际上是一个前缀,而非一个目录名。

safe_mode_exec_dir = ——→ 安全模式下的可执行文件存放目录

safe_mode_allowed_env_vars = PHP_

####在安全模式下,用户仅可以更改的环境变量的前缀列表(逗号分隔)。允许用户设置某些环境变量,可能会导致潜在的安全漏洞。注意: 如果这一参数值为空,PHP将允许用户更改任意环境变量。

safe_mode_protected_env_vars = LD_LIBRARY_PATH

####在安全模式下,用户不能更改的环境变量列表(逗号分隔)。这些变量即使在safe_mode_allowed_env_vars指令设置为允许的情况下也会得到保护。

disable_functions = ——→ 该指令接受一个用逗号分隔的函数名列表,以禁用特定的函数。

disable_classes = ——→ 该指令接受一个用逗号分隔的类名列表,以禁用特定的类

zend.enable_gc = On ——→

expose_php = On ——→ 在网页头部显示php信息

max_execution_time = 30 ——→ 每个脚本最大执行秒数

max_input_time = 60 ——→ 每个脚本用来分析请求数据的最大限制时间

memory_limit = 128M ——→ 每个脚本执行的内存限制

error_reporting = E_ALL & ~E_DEPRECATED

display_errors = Off ——→ #显示失误(该关闭,换成日志显示)

display_startup_errors = Off ——→ #显示启动失误

log_errors = On ——→ 生成错误错误日志显示

log_errors_max_len = 1024 ——→ 设定error_log最大长度

ignore_repeated_errors = Off ——→ 打开后,不记录重复的信息

ignore_repeated_source = Off ——→ 打开后当记录重复的信息时忽略来源

report_memleaks = On ——→ 报告内存泄露,仅在debug编译模式下有效

track_errors = Off ——→ ####在$php_errormsg中保存最后一次错误/警告消息 (逻辑值).永远不要再生产环境中使用此特性:html_errors 会显示php错误所在的html标签

html_errors = Off ——→ 是否开启静态网页错误提示

variables_order = “GPCS” ——→ ####此指令描述了PHP注册GET, POST, Cookie, 环境 和 内置变量的顺序 (各自使用G, P, C, E 和 S , 一般使用 EGPCS 或 GPC). 注册使用从左往右的顺序, 新的值会覆盖旧的值.

request_order = “GP”

####此指令描述的顺序PHP注册GET,POST和COOKIE变量_REQUEST数组。注册是由左到右,新的值将覆盖旧值。如果这个指令没有设置,variables_order中使用$ _REQUEST内容。请注意,默认分配的php.ini文件中不包含’C’饼干,出于安全方面的考虑。

register_globals = Off ——→ ##是否打开register全局变量

register_long_arrays = Off

####是否注册老形式的输入数组, HTTP_GET_VARS 和相关数组;如果你不使用他们,建议为了提高性能关闭他们.

register_argc_argv = Off

####此指令让PHP确认是否申明 argv&argc 变量 (这些变量会包含GET信息). ;如果你不使用这些变量,为了提升性能应该关闭此选项.

auto_globals_jit = On

####当打开此项, SERVER 和 ENV 变量将在第一次被使用时而不是脚本一开始时创建(运行时);如果这些变量在脚本中没有被使用过, 打开此项会增加一点性能.;为了使此指令有效,PHP指令 register_globals, register_long_arrays,;以及 register_argc_argv 必须被关闭.

post_max_size = 8M ——→ #PHP可以接受的最大的POST数据大小

magic_quotes_gpc = Off ——→ #针对GET/POST/Cookie数据打开Magic quotes.

magic_quotes_runtime = Off

####针对实时产生的数据打开Magic quotes,例如从SQL获取的数据, 从exec()返回的数据等等.

magic_quotes_sybase = Off ##使用 Sybase 风格的 magic quotes (使用”来引导’替代\’).

auto_prepend_file = ——→ #在任何PHP文档之前或之后自动增加文件

auto_append_file =

####两个有趣的变量是auto_prepend_file以及auto_append_file。这些变量指定PHP自动添加到任何PHP文档文件头或文件尾的其他文件。这对于为PHP产生的页面添加页眉或页脚非常有用,可以节省为每个PHP文档添加代码的时间。但需要注意这里的指定文件将会添加到所有的PHP文档中,所以这些变量必须适合单应用程序(single-application)的服务器。所包含的文件要么是PHP脚本,要么是普通的HTML文档。嵌入式PHP代码必须用标准标记括起来。

default_mimetype = “text/html” ——→ #PHP内建默认为text/html

doc_root = ——→ #PHP的”根目录”。仅在非空时有效。

; 如果safe_mode=On,则此目录之外的文件一概被拒绝。 ; 如果编译PHP时没有指定FORCE_REDIRECT,并且在非IIS服务器上以CGI方式运行, ; 则必须设置此指令(参见手册中的安全部分)。 ; 替代方案是使用的cgi.force_redirect指令

user_dir =

####告诉php在使用 /~username 打开脚本时到哪个目录下去找,仅在非空时有效。 也就是在用户目录之下使用PHP文件的基本目录名,例如:”public_html”

enable_dl = Off

####是否允许使用dl()函数。dl()函数仅在将PHP作为apache模块安装时才有效。 禁用dl()函数主要是出于安全考虑,因为它可以绕过open_basedir指令的限制。 在安全模式下始终禁用dl()函数,而不管此处如何设置。

file_uploads = On 是否开启上传功能

upload_max_filesize = 2M #最大可上传文件,2M

max_file_uploads = 20 最大同时可以上传20个文件

allow_url_fopen = On #是否允许打开远程文件

allow_url_include = Off #是否允许include/require远程文件

default_socket_timeout = 60 默认的socket超时时间

[Date] 日期

[filter]

[iconv]

[intl]

[sqlite]

[sqlite3]

[Pcre]

[Pdo]

[Pdo_mysql]

pdo_mysql.cache_size = 2000 ——→ Ped_mysql的缓存大小

pdo_mysql.default_socket= ——→ 默认的socket时间

[Phar]

[Syslog]

define_syslog_variables = Off ——→ 是否定义各种的系统日志变量

[mail function] ——→ 邮件功能

SMTP = localhost ——→ 本地作为邮件服务器

smtp_port = 25 邮件端口号默认是25

mail.add_x_header = On ——→ 是否开启最大的header

[SQL]

sql.safe_mode = Off

####是否使用SQL安全模式。如果打开,指定默认值的数据库连接函数将会使用这些默认值代替支持的参数。对于每个不同数据库的连接函数,其默认值请参考相应的手册页面。

[ODBC]

odbc.allow_persistent = On ——→ 允许或阻止持久连接.

odbc.check_persistent = On ——→ 在重用前检查连接是否可用

odbc.max_persistent = -1 ——→ 持久连接的最大数目,-1意味着没有限制.

odbc.max_links = -1 ——→ 最大连接数(持久 + 非持久).-1意味着没有限制.

odbc.defaultlrl = 4096 ——→ 长字段处理.返回变量的字节数.0 意味着略过.

odbc.defaultbinmode = 1

####二进制数据处理.0意味着略过,1按照实际返回,2转换到字符.;查看odbc_binmode和odbc_longreadlen 的文档来获取针对uodbc.defaultlrl和uodbc.defaultbinmode的解释

[Interbase] ——→ Interbase数据库

ibase.allow_persistent = 1 ——→ 允许或组织持久连接。

ibase.max_persistent = -1 ——→ 持久连接的最大数目,-1意味着没有限制.

ibase.max_links = -1 ——→ 最大连接数(持久 + 非持久).-1意味着没有限制.

ibase.timestampformat = “%Y-%m-%d %H:%M:%S” ——→ 数据库时间记录模式

ibase.dateformat = “%Y-%m-%d”

ibase.timeformat = “%H:%M:%S”

[MySQL]

mysql.allow_local_infile = On ——→ 是否允许本地文件连接数据库

mysql.allow_persistent = On ——→ 允许或禁止 持久连接

mysql.cache_size = 2000 ——→ mysql缓存大小

mysql.max_persistent = -1 ——→ 持久连接的最大数目. -1 意味着没有限制.

mysql.max_links = -1 ——→ 连接的最大数目(持久和非持久)。-1 代表无限制

mysql.default_port =

####mysql_connect() 使用的默认端口,如不设置,mysql_connect()

;将使用变量 $MYSQL_TCP_PORT,或在/etc/services 下的mysql-tcp 条目(unix),

;或在编译是定义的 MYSQL_PORT(按这样的顺序)

;Win32环境,将仅检查MYSQL_PORT。

mysql.default_socket =

####用于本地 MySql 连接的默认的套接字名。为空,使用 MYSQL 内建值

mysql.default_host = ——→ mysql_connect() 默认使用的主机(安全模式下无效)

mysql.default_user = ——→ mysql_connect() 默认使用的用户名(安全模式下无效)

mysql.default_password = ——→ mysql_connect() 默认使用的密码(安全模式下无效

mysql.connect_timeout = 60 ——→ 连接超时时间,默认是60s

mysql.trace_mode = Off

[MySQLi]

mysqli.max_persistent = -1 ——→ 持久连接的最大数目. -1 意味着没有限制.

mysqli.allow_persistent = On ——→ 允许或拒绝之久连接

mysqli.max_links = -1 ——→ 最大连接数. -1 意味着没有限制.

mysqli.cache_size = 2000 ——→ 连接缓存大小

mysqli.default_port = 3306 ——→ 连接端口号

####mysqli_connect()默认的端口号.如果没有设置, mysql_connect() 会使用 $MYSQL_TCP_PORT;或者 位于/etc/services的 mysql-tcp 入口或者编译时定义的MYSQL_PORT 值(按照此顺序查找).;Win32 只会查找MYSQL_PORT值.

mysqli.default_socket =

####对于本地MySQL连接的默认socket名称. 如果为空, 则使用MySQL内建默认值.

mysqli.default_host =

####mysqli_connect()的默认host值(在安全模式中不会生效)

mysqli.default_user =

####mysqli_connect()的默认user值(在安全模式中不会生效).

mysqli.default_pw =

####mysqli_connect() 的默认password值(在安全模式中不会生效).

; 注意在此文件中保存密码一般来说是 *糟糕* 的主义.

; *任何* 使用PHP的用户可以执行 ‘echo get_cfg_var(“mysqli.default_password”)

; 并且获取到此密码! 而且理所当然, 任何有对此文件读权限的用户都可以获取到此密码.

mysqli.reconnect = Off ——→ 允许或阻止持久连接

[mysqlnd]

mysqlnd.collect_statistics = On

mysqlnd.collect_memory_statistics = Off

[OCI8]

[PostgreSQL]

pgsql.allow_persistent = On ——→ 允许或阻止持久连接.

pgsql.auto_reset_persistent = Off

####总是在 pg_pconnect() 时检测断开的持久连接.;自动重置特性会引起一点开销.

pgsql.max_persistent = -1 ——→ 持久连接的最大数目. -1 意味着没有限制.

pgsql.max_links = -1 ——→ 最大连接数 (持久 + 非持久). -1 意味着没有限制

pgsql.ignore_notice = 0 ——→ 是否忽略 PostgreSQL 后端通告消息.;通告消息记录会需要一点开销.

pgsql.log_notice = 0

####是否记录 PostgreSQL 后端通告消息.;除非 pgsql.ignore_notice=0, 否则模块无法记录通告消息。

[Sybase-CT]

sybct.allow_persistent = On ——→ 允许或阻止持久连接.

sybct.max_persistent = -1 ——→ 持久连接的最大数目. -1 意味着没有限制.

sybct.max_links = -1 ——→ 最大连接数 (持久 + 非持久). -1 意味着没有限制.

sybct.min_server_severity = 10 ——→ 显示出的错误最小严重程度.

sybct.min_client_severity = 10 ——→ 显示出的消息最小严重程度

[bcmath]

bcmath.scale = 0 ——→ #用于所有bcmath函数的10十进制数数字的个数

[browscap]

[Session]

session.save_handler = files ——→ 用于保存/取回数据的控制方式

session.use_cookies = 1 ——→ 是否使用cookies

session.use_only_cookies = 1

####这个选项允许管理员去保护那些在URL中传送session id的用户免于被攻击;默认是0.

session.name = PHPSESSID ——→ session 的名字(同时作为cookie的名称

session.auto_start = 0 ——→ 在请求开始时初始化 session

session.cookie_lifetime = 0 ——→ cookie的存活秒数,如果为0,则是直到浏览器重新启动

session.cookie_path = / ——→ cookie的有效路径

session.cookie_domain = ——→ cookie的有效域名

session.cookie_httponly =

####是否将httpOnly标志增加到cookie上,

增加后则cookie无法被浏览器的脚本语言(例如JavaScript)存取.

session.serialize_handler = php 用于序列化数据的处理器. php是标准的PHP序列化器.

session.gc_probability = 1

####; 定义’垃圾回收’进程在每次session初始化时开始的比例.

; 比例由 gc_probability/gc_divisor来得出,

; 例如. 1/100 意味着在每次请求时有1%的机会启动’垃圾回收’进程.

session.gc_divisor = 1000

session.gc_maxlifetime = 1440

####在这里数字所指的秒数后,保存的数据将被视为’碎片(garbage)’并由gc进程清理掉。

session.bug_compat_42 = Off

####PHP 4.2 和更早版本有一个未公开的 特性/bug , 此特性允许你在全局初始化一个session变量,即便 register_globals已经被关闭.;如果此特性被使用,PHP 4.3 和更早版本会警告你.;你可以关闭此特性并且隔离此警告. 这时候,如果打开bug_compat_42,那此警告只是被显示出来.

session.bug_compat_warn = Off

session.referer_check =

####检查HTTP Referer来防止带有id的外部URL.;HTTP_REFERER 必须包含从session来的这个字段才会被认为是合法的.

session.entropy_length = 0 ——→ 从此文件读取多少字节

session.cache_limiter = nocache

####设置为{nocache,private,public,}来决定HTTP缓冲的类型;留空则防止发送anti-caching头.

session.cache_expire = 180 ——→ 文档在n分钟之后过期.

session.use_trans_sid = 0

####trans sid 支持默认关闭.

;使用 trans sid 可能让你的用户承担安全风险.;使用此项必须小心.; – 用户也许通过email/irc/其他途径发送包含有效的session ID的URL给其他人.; – 包含有效session ID的URL可能被存放在容易被公共存取的电脑上.; – 用户可能通过在浏览器历史记录或者收藏夹里面的包含相同的session ID的URL来访问你的站点.

session.hash_function = 0 ——→ 选择hash方法;0:MD5(128 bits);1:SHA-1(160 bits)

session.hash_bits_per_character = 5

; 当转换二进制hash数据到可读形式时,每个字符保存时有几位.

; 4 bits: 0-9, a-f; 5 bits: 0-9, a-v; 6 bits: 0-9, a-z, A-Z, “-“, “,”

url_rewriter.tags = “a=href,area=href,frame=src,input=src,form=fakeentry”

URL rewriter会在已经定义的一组HTML标签内查找URL.; form/fieldset 是特殊字符; 如果你在这里包含他们, rewriter会增加一个包含信息的隐藏字段否则就是在URL中附加信息.; 如果你你想遵守XHTML, 删除form的入口.; 注意 所有合法的入口都需要一个”=”符号, 甚至是没有任何值的.

[MSSQL]

mssql.allow_persistent = On ——→ 允许或阻止持久连接

mssql.max_persistent = -1 ——→ 持久连接的最大数目. -1 意味着没有限制.

mssql.max_links = -1 ——→ 最大连接数 (持久 + 非持久). -1 意味着没有限制.

mssql.min_error_severity = 10 ——→ 显示出的错误最小严重程度.

mssql.min_message_severity = 10 ——→ 显示出的消息最小严重程度

mssql.compatability_mode = Off ——→ PHP 3.0 老版本的兼容模式.

mssql.secure_connection = Off ——→ 当连接到服务器时使用NT验证

[Assertion]

[COM]

[mbstring]

[gd]

[exif]

[Tidy]

当调用tidy时,默认指向tidy配置文件的路径 tidy是否自动清除和修复输出?; 警告: 不要在你产生非html内容时使用此项,例如产生动态图片时

tidy.clean_output = Off 清除功能是否开启,本文中为关闭状态

[soap]

soap.wsdl_cache_enabled=1 ——→ 打开或关闭WSDL缓冲特性.

soap.wsdl_cache_dir=”/tmp” ——→ 设置SOAP扩展存放缓冲文件的目录

soap.wsdl_cache_ttl=86400——→(存活时间)设置当缓冲文件被用来替换原有缓冲文件的秒数

soap.wsdl_cache_limit = 5 ——→ 最小缓存

[sysvshm]

[ldap]

ldap.max_links = -1

[mcrypt]

[dba]

[xsl]

本文固定链接: http://www.seo0395.com/archives-185
转载请注明: 潘工 2015年08月31日 于 潘军伟博客 发表

AD:真正免费,域名+虚机+企业邮箱=0元

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
了解Python编程的入门级代码示例了解Python编程的入门级代码示例Jan 04, 2024 am 10:50 AM

了解Python编程的入门级代码示例Python是一种简单易学,功能强大的编程语言。对于初学者来说,了解Python编程的入门级代码示例是非常重要的。本文将为您提供一些具体的代码示例,帮助您快速入门。打印HelloWorldprint("HelloWorld")这是Python中最简单的代码示例。print()函数用于将指定的内容输出

PHP переменные в действии: 10 реальных примеров использованияPHP переменные в действии: 10 реальных примеров использованияFeb 19, 2024 pm 03:00 PM

PHP变量存储程序运行期间的值,对于构建动态且交互式的WEB应用程序至关重要。本文将深入探讨php变量,并通过10个真实的示例展示它们的实际应用。1.存储用户输入$username=$_POST["username"];$passWord=$_POST["password"];此示例从表单提交中提取用户名和密码,并将其存储在变量中以供进一步处理。2.设置配置值$database_host="localhost";$database_username="username";$database_pa

从入门到精通:Go语言中常用数据结构的代码实现从入门到精通:Go语言中常用数据结构的代码实现Mar 04, 2024 pm 03:09 PM

标题:从入门到精通:Go语言中常用数据结构的代码实现数据结构在编程中起着至关重要的作用,它是程序设计的基础。在Go语言中,有许多常用的数据结构,掌握这些数据结构的实现方式对于成为一名优秀的程序员至关重要。本文将介绍Go语言中常用的数据结构,并给出相应的代码示例,帮助读者从入门到精通这些数据结构。1.数组(Array)数组是一种基本的数据结构,是一组相同类型

Go语言编程实例:Web开发中的代码示例Go语言编程实例:Web开发中的代码示例Mar 04, 2024 pm 04:54 PM

《Go语言编程实例:Web开发中的代码示例》随着互联网的快速发展,Web开发已经成为各行业中必不可少的一部分。作为一门功能强大且性能优越的编程语言,Go语言在Web开发中越来越受到开发者们的青睐。本文将通过具体的代码示例,介绍如何利用Go语言进行Web开发,让读者能够更好地理解和运用Go语言来构建自己的Web应用。1.简单的HTTP服务器首先,让我们从一个

Java实现简单的冒泡排序代码Java实现简单的冒泡排序代码Jan 30, 2024 am 09:34 AM

Java冒泡排序最简单的代码示例冒泡排序是一种常见的排序算法,它的基本思想是通过相邻元素的比较和交换来将待排序序列逐步调整为有序序列。下面是一个简单的Java代码示例,演示了如何实现冒泡排序:publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){int

如何使用PHP编写库存管理系统中的库存分仓管理功能代码如何使用PHP编写库存管理系统中的库存分仓管理功能代码Aug 06, 2023 pm 04:49 PM

如何使用PHP编写库存管理系统中的库存分仓管理功能代码库存管理是许多企业中不可或缺的一部分。对于拥有多个仓库的企业来说,库存分仓管理功能尤为重要。通过合理管理和跟踪库存,企业可以实现不同仓库之间的库存调拨,优化运营成本,改善协同效率。本文将介绍如何使用PHP编写库存分仓管理功能的代码,并为您提供相关的代码示例。一、建立数据库在开始编写库存分仓管理功能的代码之

华为云边缘计算对接指南:Java代码示例快速实现接口华为云边缘计算对接指南:Java代码示例快速实现接口Jul 05, 2023 pm 09:57 PM

华为云边缘计算对接指南:Java代码示例快速实现接口随着物联网技术的快速发展和边缘计算的兴起,越来越多的企业开始关注边缘计算的应用。华为云提供了边缘计算服务,为企业提供了高可靠的计算资源和便捷的开发环境,使得边缘计算应用更加容易实现。本文将介绍如何通过Java代码快速实现华为云边缘计算的接口。首先,我们需要准备好开发环境。确保你已经安装了Java开发工具包(

指导与示例:学习Java选择排序算法的实现指导与示例:学习Java选择排序算法的实现Feb 18, 2024 am 10:52 AM

Java选择排序法代码编写指南及示例选择排序是一种简单直观的排序算法,其思想是每次从未排序的元素中选择最小(或最大)的元素进行交换,直到所有元素排序完成。本文将提供选择排序的代码编写指南,并附上具体的Java示例代码。算法原理选择排序的基本原理是将待排序数组分为已排序和未排序两部分,每次从未排序部分选择最小(或最大)的元素,将其放到已排序部分的末尾。重复上述

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment