Home php教程 php手册 冷眼看PHP

冷眼看PHP

Jun 06, 2016 pm 07:56 PM
php

PHP 给人印象最深的莫过于:你不必因为想要用好它就去深入了解这种语言。想一想,在你所知道的语言中有多少能做到这一点呢?其中比较明显的一个就是 java 了,仅编一个 hello world 就需要了解不少的知识,更别提创建一个 web 应用程序了。但对 PHP ,这些都

PHP给人印象最深的莫过于:你不必因为想要用好它就去深入了解这种语言。想一想,在你所知道的语言中有多少能做到这一点呢?其中比较明显的一个就是java了,仅编一个hello world就需要了解不少的知识,更别提创建一个web应用程序了。但对PHP,这些都不在话下。

应该说PHP在访问Bad Behavior时比Perl还是强一点点的。记得在Web刚兴起的那段日子,听到人们常说他们将用Perl创建大型程序,虽然也知道(没有办法说服他们)最终会失败。

另一方面,PHP确实具有创建一些较大程序的能力,比如Drupal。我的朋友Nancy Nicolaisen(也是这里的Blogger)说她想建立一个旅游网站,我建议她看看Drupal。她照做了,并最终选择了它。因为在她看来Drupal的用户社区太优秀了,为她在建立站点并顺利上线提供了大量的帮助。

PHP让菜鸟快速上手并直接去做他们感兴趣的东西,而无须关心那些繁杂的编程理论和实践。你只要去做就可以在网页上得到想要的。

然而这也是这个语言的问题所在。你会发现存在许多完全错误的PHP实现的例子,这一般是都由那些互相copy的人写的,因为没有人知道问题到底是怎样的。我最先用到的例子之一就是PHP的文件锁。结果是找到很多,但没有正确的。事实上,PHP主要用在可以处理所有一致性问题的数据库上面,这样人们就不必考虑一些底层问题了。但是程序语言在与数据库的高层交互和文件系统的底层交互上的处理方式是一样的,所以这里不存在初学者所需的“龙来了”的标志。我感觉社区里有太多“坐享其成”的人,而真正了解并理解基本原理的人却寥寥无几。所以就出现了在无知的状态下闯入了这片少有人问津的领域而进行滥用的情形。

之后,PHP5出现了,其为集C++Java之大成者。它的这个强大特性着实令人振奋,而我的忧虑感却开始加重了:人们看来随便就可以拥有所有特性而不去仔细考虑各个细节和对语言产生的方方面面的影响。相反,在过去的十多年来我关注着Python语言所做的每一个谨慎的抉择。时间会证明,或许PHP社区将会解决如何将所有这些特性都派上用场的问题,但我对此疑虑重重。

与此同时,在我更新缓慢的新站点上我使用了PHP。关键是,我只在很小的范围内用到它。例如,PHP可以解决无法轻易include文件这样以一个低级的HTML问题。PHP做到了,并且也可以很容易地在整个网站上部署我的设计方案。有时你只是想在页面上嵌入一个你做的小东西,这也是PHP所擅长的。

但是,只要目标变得稍微有点复杂,我认为最好还是转到Python上。因此,PHP还是仅限于小范围应用,我不想广泛使用它。

Statement of this Website
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

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

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Apr 05, 2025 am 12:04 AM

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

PHP Program to Count Vowels in a String PHP Program to Count Vowels in a String Feb 07, 2025 pm 12:12 PM

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

How do you parse and process HTML/XML in PHP? How do you parse and process HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

Explain late static binding in PHP (static::). Explain late static binding in PHP (static::). Apr 03, 2025 am 12:04 AM

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are PHP magic methods (__construct, __destruct, __call, __get, __set, etc.) and provide use cases? What are PHP magic methods (__construct, __destruct, __call, __get, __set, etc.) and provide use cases? Apr 03, 2025 am 12:03 AM

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

See all articles