Ngôn ngữ PHP đã phát triển một cách hữu cơ, do đó, việc đặt tên cho các hàm là bất tiện trong các phần. Nhiều định dạng khác nhau được giữ lại vì lý do tương thích ngược.
Một phân tích nhỏ, nhưng ngoài các vấn đề đặt tên chức năng, một tác dụng phụ không may khác của sự phát triển hữu cơ của ngôn ngữ là sự mâu thuẫn rõ ràng trong thứ tự đối số, ví dụ: xem xét các chức năng in_array và strstr:
bool in_array (mixed $needle, array $haystack [, bool $strict])
string strstr (string $haystack, mixed $needle [, bool $before_needle=false])
Funnily đủ, PHP có vẻ là trong nội bộ phù hợp với các orderings trong đó tất cả các chức năng chuỗi dường như sử dụng $haystack, $needle
trong khi chức năng mảng là cách khác xung quanh, nhưng điều này có thể mất một chút làm quen với người mới sử dụng PHP. Có một số post on ExpressionEngine nói về điều này đặc biệt chi tiết hơn, cũng như một discussion on the PHP bugs list.
Như ngôn ngữ trưởng thành, có những nỗ lực khác nhau để thực hiện một quy ước đặt tên cứng nhắc hơn và nhất quán - từ Zend Framework Documentation:
tên hàm phải luôn luôn bắt đầu với một chữ cái thường. Khi tên hàm chứa nhiều hơn một từ, chữ cái đầu tiên của mỗi từ mới phải được viết hoa. Điều này thường được gọi là định dạng "camelCase".
filterInput()
getElementById()
Đối với một hơi khác nhau, từ 20 possible reasons why PHP function names and parameters are weird:
keo PHP API và con người với nhau, và đôi khi điều này trở nên lộn xộn
Chức năng PHP đã được phát triển trong nhiều trường hợp, som etimes say
PHP chức năng đặt tên thuật toán vẫn còn là một bí mật và không thể bị bẻ khóa
PHP chọn để cung cấp cho mọi người một cái gì đó thú vị để phàn nàn/blog/cười về
PHP có những vấn đề khác để giải quyết
Tôi không đồng ý với những người đã bỏ phiếu này. Đó là một câu hỏi hợp pháp. Và câu trả lời đặt ra ở đây có thể đi một chặng đường dài để giúp các nhà phát triển nghèo chịu đựng sự kỳ quặc đặt tên trong PHP. –
Downvotes là một công cụ đặt tên bất thường và lập lại trật tự đã khiến tôi nhiều hơn một lần – ConroyP
Có một phân đoạn nhất định của các nhà phát triển PHP tức giận bất cứ khi nào bất cứ ai hỏi 'ngôn ngữ' của họ. Họ bỏ phiếu bất kỳ câu hỏi nào đưa ra những sai sót trong PHP. – iconoclast