php programming environment. PHP editors. Free IDE - NetBeans

Probably, my dear reader has more than once encountered a situation where the final web project was focused not on a narrow circle of web programmers or people "introduced" into the system, but exclusively on beginners, for whom the most important aspect is, of course, simplicity and practicality, but the most basic is, of course, associativity and beauty.

Recently, I had to develop a project for an organization of writers in Ukraine, in which, of course, there are "a lot of programmers", and it was necessary to look for a solution to simplify the system interface, especially when writing articles, and other manually edited content of the site.

I've tried a decent amount of visual editing systems, and certainly I have a certain impression about each of them: both good and bad.

As part of this project, I tried three visual editing systems that are certainly worthy of attention and will be discussed in this article. These are the following programs: TinyMCE, WYM Editor, HTMLArea.

Well, of course, these programs cannot be put in the same row, at least in terms of their functionality and purpose. It would be tantamount to comparing the capabilities of the built-in Notepad editor and the commercial Microsoft Word. After all, each of these programs is special, and belongs to a certain class. Therefore, today we will talk about it.

The Tale of TinyMCE

Well, this program, in my opinion, occupies an honorary pedestal of superiority in the market of similar products, as it has the most functional interface, "portability", associativity, and at the same time - relative speed. But to say this means not to say anything at all, since these superficial praises cannot reveal all its advantages, including: the most developed API among all the above systems, simplicity and clarity, rather fast processing time (considering the level and quality of actions), as well as the quality of processing external data. For example, you can simply copy text from a Word document, and with the right settings, the system translates it in a very, very similar format, with relatively clean code that meets the standards that put forward the main trendsetter in the WWW - W3C. But, of course, there is no honey without tar, and in this case there are some disadvantages. Among them, inoperability on Opera browsers up to 8.4, on which the system will not work at all. And, of course, given all its capabilities and multibrowser, we get a rather voluminous source code at the output, namely 1.9 MB, but I think that the size pays for itself in full.

So let's say you have some form.html document that contains some form, with a TextArea field. But how to make it WYSIWYG-type?

Yes, it’s very simple, for this you first need to connect the main TinyMCE class, after which the prototype of the TinyMCE object will automatically become available in the document, which is the main system API through which communication with the program takes place and its configuration.

Let's look at the simplest case of using the program, using the example of a document with a form and a TextArea element:

Listing 1.1

First example

Some TextArea element

In this simplest case, as an editing field, we will see an editor with a minimum set of functions for standard text formatting, but no more. A similar approach can be applied as part of a project to create a chat, forum, guest book, and more. For more complex options, we have an additional set of functions and methods, which we will talk about now.

But let's talk first about the parameters that we pass in this case to the class initialization method - init ().

We pass some hash as a parameter, in which the value of the mode element corresponds to "textareas", and the value of the theme element - "simple". The `mode` element means the method of "replacing" standard text fields (textarea) with WYSIWYG. It can take the values ​​"textareas" , "exact" and "specify_textareas".

In the case of "textareas" we are instructing the editor to convert all elements of the TextArea to editable elements. In other cases, we manipulate certain edit fields whose IDs must be listed as the value of the elems element, separated by commas.

In turn, the "theme" element means nothing more than the current type of editor design and can take the values: "simple" and "advanced".

In our case, when we use the "simple" type, we connect only the standard functions of the editor, and at the same time we cannot change its functionality much, as I said - this is quite suitable for small projects, as well as for those in which high connection speed.

Now let's look at working with the editor while the "advanced" theme mode is enabled.

In this case, we have a flexible interface in editing, full editing of all functions used by the editor, as well as a few more points.

Well, let's say you started a project of some electronic magazine or Internet publication, in which the possibility of creating articles by the administration is fundamental. It should be borne in mind that the program interface should be as similar as possible to the interface of the most used Word, which is familiar to us, and also have a sufficient number of functions to implement all the ideas of the editor regarding the formatting of the text of the article, and questions such as : "Where do you need to click?", "Why doesn't it show:.", "Where did all the text go":

For the rarer occurrence of such questions (but there is no getting away from them :) we will now slightly change the current version of the editor and add the following functions:

  1. Automatic formatting of pasted text
  2. Adding Formatting Functions
  3. Change the location of the control panels
  4. Set the editor language
  5. Adding a spell check

Well, let's discuss more precisely what we want to see in the editor:

  1. The format bar is at the top
  2. Status bar missing
  3. Editor language - Russian
  4. Formatting options: bold, italic, underline, font, size, text style, color, fill.
  5. Structural formatting features: table, alignment, tab, list
  6. Additional functions: insert image, insert, preview, insert hyperlink, "rollback" and "return" functions, and, probably, we will introduce printing.

Well, there is a formalization of the task, now let's decide how we will implement it.

To implement the function of autoformatting text inserted from outside, you must specify the hash list parameter - "paste_auto_cleanup_on_paste", which takes a boolean value (true || false), and depending on this formats or not the external text transferred from the clipboard.

When using this parameter, the following parameters should also be used:

paste_convert_headers_to_strong: (true | false), paste_strip_class_attributes: "all", paste_remove_spans: (true | false), paste_remove_styles: (true | false)

Well, I do not voice them, since their names are already associative. Well, we have solved the problem with the insert, and now we need to solve a few more tasks that we set earlier. But let's talk about the program panels now, since this is quite important when designing the visual display of the editor.

There are two types of panels, namely the toolbar and the statusbar.

The first panel contains function buttons, as well as other tools for formatting and editing text.

Each of these panels can have its own position (bottom or top), that is, we have the ability to quite flexibly change their positions in the editor. To do this, you can use the parameters:

Theme_advanced_toolbar_location: (top | bottom | none), theme_advanced_statusbar_location: top | bottom | none)

In this case, depending on the value of the parameter, the final position of the panel will be set, or if the parameter is set to "none", then the panel will not be displayed at all.

And yet, the toolbar has such a parameter as alignment, according to the value of which, the panel elements will be centered. The theme_advanced_toolbar_location parameter is responsible for centering the elements, and can take standard values: center, left, right (the center parameter is set by default).

So, we figured out the panels, but should something be added to them?

After all, by default, it will simply be empty, with a minimum set of values, but such an editor is not needed, is it?

For placement, elements, or in other words - buttons, must be divided into several categories, each of which can contain elements (not) separated by a separator sign. To abstract groups in the program, the concept of buttons is used, and to set a group, the value of the theme_advanced_button(n+1) parameter, where n is the current number of the group, is set to a set of elements that should belong to it.

Although you can not worry too much about the set, since by default in the toolbar you can already find the standard set of necessary alignment, formatting and other functions, but this is only available in the "advanced" theme mode.

To set the language of the editor, you just need to add the parameter "language" with the value "ru".

Well, let's see what I got:

Listing 1.2.

TNT43 Visual Editor

Here is the whole code. It looks quite cumbersome, but overall it is quite easy to understand.

Well, let's look at its anatomy. First, we pass the most important parameters, namely: the method of "replacing" text fields, the editor's theme type, the editor's language, and the list of plug-ins to include. Speaking of them. As far as you noticed, if you read carefully, then in the framework of this text we have not mentioned them yet.

Plugins are some external modules that are necessary for the implementation of certain program functions. Plugins are located in the `plugins` folder, from where they will be connected to the program at the time of the call. To use plugins in the program, you must first list them separated by commas as parameters of the `plugins` element, then add the corresponding button to the panel to use them.

Also, as part of the example in Listing 1.2, we used the inserterdate plugin, for which we later set the dateFormat and timeFormat parameters, which specify the format of the time and date to use, respectively. They are set according to the specification of the timestamp function.

It is also worth mentioning other interesting functions used in the example:

  • paste_remove- if the mode is true, the editor filters all data received from the shoal buffer and deletes the spa containers.
  • paste_convert_headers_to_strong- when set to true, the editor changes all headings (h1,h2,h3,h4,h5,h6) in the clipboard to elements
  • paste_auto_cleanup_on_paste- filter for clipboard data (applies to data from MS Word)

That, in my opinion, is enough for a general overview of the system. However, we have not yet covered a fairly large number of API methods, without which it is often very difficult to imagine working with the editor. But I promise that we will consider them in the next issues of MK.

There are many ways to create your own site - from using ready-made templates on Narod.ru to applying for an ad like "creating sites in two days from 300 rubles." Even a child can create his own blog or a simple home page. That is why almost everyone can boast of having their own website on the Web. Various services provide at the disposal of anyone who wants site-constructors, which in a matter of seconds create a simple personal user page. There are hundreds and hundreds of thousands of such pages on the Internet. As a rule, they are similar to each other and are not remembered. For those who use free online tools to create a personal web page, owning a website is often fun, people create the page and forget about it. The content on it in most cases is reduced to the publication of photos of your dog and a few information "about yourself".

Another thing is if a person perceives their own website as a means of communication, such as telephone or mail. Having your own website is useful for any entrepreneur who wants to present his business, a practicing doctor, a lawyer who opens his consultation, a training center, etc. In this case, the page should be original and informative, carry useful information for visitors. To get a site that meets these requirements, free homepage generators alone are indispensable. However, mastering the basics of web programming can take a long time. You can, of course, hire a professional to make any page according to your desires, but this option has a very obvious drawback, so for many it is unacceptable.

Visual web editors are a good way to save time on learning web programming and quickly make a website filled with all the necessary information. On the one hand, to create a web project using such a program, you do not need to have special knowledge and be a programmer. On the other hand, these types of apps give you the freedom to be creative and ensure that the site doesn't look exactly the same as thousands of others. The work of visual web editors is based on the WYSIWYG property - What You See Is What You Get (what you see is what you get). In other words, during editing, web pages look much the same as they will be displayed in a browser.

⇡ WYSIWYG Web Builder 7.1.0

  • developer: Pablo Software Solutions
  • distribution size: 5.5 Mb
  • distribution: shareware
  • Russian interface: no

Web pages created with the WYSIWYG Web Builder and other visual editors consist of individual blocks. It can be text, graphics, flash videos, etc. All the user needs to do is select the necessary blocks and place them in the appropriate places on the page, while the code will be automatically generated by the program.

If you have no experience in web design, you should start creating your first project in the program with a ready-made template. By default, WYSIWYG Web Builder has about ten templates of different directions, and several dozen more can be downloaded for free from the official website of the program. After downloading the template, you will be able to edit any of its elements.

To do this, you can use the numerous tools placed on the vertical panel. For convenience, they are divided into categories: navigation (site tree, navigation menu), drawing (line, curve, polygon), multimedia tools (Flash player, YouTube player, Java, OLE object), tools for working with web forms ( a field for inserting a CAPTCHA code, a checkbox, a button for downloading a file, a field for entering text), Paypal (various buttons for working with this electronic payment system), etc. If you do not need any category of funds in your work, you can collapse it, to free up screen space for more popular tools.

It is worth paying attention to the category Extra. Here are collected tools for creating a photo gallery, adding a subscription to news in RSS format, a slide show, searching the site. You can also find a whole collection of ready-made Javascript code elements here. This includes a variety of visual effects, and such useful tools as determining the current version of the browser, displaying information about the time the web page was last modified, placing a link to bookmark the page.

Despite the fact that when working in the WYSIWYG Web Builder, the user sees the finished page elements, the site may still look a little different in the browser than in the working editor window. To quickly view the appearance of the page in the browser, just press the F5 key. The WYSIWYG Web Builder will open the project in the system's default browser. If you need to view pages in several browsers at once, you can add them to the list.

Typically, a site template consists of several pages. For convenient project management, the program window has a special Site Manager panel, which displays a tree of site pages. Using the tools of this panel, you can create new pages based on templates, add pages previously saved to your hard drive, copy existing pages, view their properties, etc.

In the process of working on a resource consisting of a large number of pages, such program tools as checking links for operability, estimating the size of pages, and a site map generator in the form of an XML file, which will be placed in the root directory of the site, may also come in handy. In addition, WYSIWYG Web Builder can help you collect all the images and other media files that are used on web pages in one place.

Despite the fact that the WYSIWYG Web Builder itself is a fairly functional editor, you may not find any tool in it. In this case, it is worth looking into the gallery of extensions - perhaps the desired tool is available as a plugin. There are more than 250 extensions for the program, and their number is constantly increasing. Extensions are written by active users of the editor and posted on the official forum. It should be borne in mind that you cannot connect extensions to the trial version of WYSIWYG Web Builder, for this you need to register the program.

⇡ Web Page Maker 3.21

  • developer: www.webpage-maker.com
  • distribution size: 3.66 MB
  • distribution: shareware
  • Russian interface: no

Web Page Maker is a fairly simple visual editor that is suitable for creating a small site that includes several pages. With it, you can add text, vector elements, graphic files, videos in various formats, tables, web forms, and other familiar page elements to the page.

The program also has ready-made versions of such an important element of any site as the navigation menu. Web Page Maker contains various menu options. Having chosen the appropriate one, you can immediately edit it, specifying the orientation (horizontal or vertical), the distance between elements, text and link parameters.

Some elements (for example, the same navigation menu) should be located on all pages of the site. When editing any block, you can quickly place it on all pages of the current project or specify those pages where it should be present.

The main part of the program window is occupied by the workspace, and on the right is the Site Contents panel. Using this panel, it is convenient to manage the pages of the site, as well as individual elements of the pages. The Elements tab displays all the blocks on the page, and by clicking on each of them, you can immediately see where it is located. In addition, you can immediately call the properties window of each element or delete unnecessary blocks. As for the set of tools for creating the site structure, it is worth noting the possibility of creating a new page based on an already existing resource on the Internet. It is enough to specify its address, and Web Page Maker will load the page, break it into blocks and make them editable.

Animation effects can be used to make the site more alive. Examples of pre-built Javascript code can be found in the Web Page Maker library. Using them, you can change the color of the window scroll, place a clock showing the current time in the corner of the screen, add a slide show, and so on.

When the work on the site is completed, the project can be saved to your hard drive or immediately uploaded to an FTP server. Moreover, an additional client is not needed for this - Web Page Maker has built-in tools for working with FTP.

⇡ Coffee Cup Visual Site Designer 6.06

  • developer: CoffeeCup Software
  • distribution size: 17.6 MB
  • distribution: shareware
  • Russian interface: no

The developers of CoffeeCup Visual Site Designer probably live by the motto "make money on everything you can make money on". Therefore, you need to keep in mind that buying this visual editor for $49 will not give you all the features that you can expect from buying most other similar programs.

So, the program comes with ten templates, and to download the rest, it is proposed to go to the developer's website. Upon opening the corresponding page, you can find that additional templates are paid and are sold at a price of $9 per piece. Such "surprises" await the user in the process of working with the application. Click the web form tool button and you'll find that it costs another $39 to use, try adding a photo gallery to your site and you'll see that this feature is also available for an additional fee.

The standard version of the program allows you to work with text, vector elements, graphics. After selecting a tool, a floating palette with its settings appears on the vertical panel. It remains on the screen until the user changes the instrument. Thanks to this approach, the maximum amount of space is allocated to the work area.

Common web page elements such as counters and web forms can only be created in the program using a custom HTML insertion tool.

When working with vector elements (arrows, polygons, asterisks, callouts, etc.), you can use numerous tools to change their appearance. For example, it is possible to change transparency, add a shadow, make an object 3D, make it glow, or change shapes when you hover over the mouse. In addition, you can customize the fill of each object, add texture.

CoffeeCup Visual Site Designer has a built-in FTP client that can be used to upload a site to a remote server. If, after loading the site, you decide to make changes to some of its pages, you can use the data synchronization function. In this case, the program will load those pages that have been changed. If necessary, without leaving CoffeeCup Visual Site Designer, you can even completely remove the site from the server.

⇡ WebSite X5 Evolution 8

  • Developer: Incomedia
  • distribution size: 15.3 MB
  • distribution: shareware
  • Russian interface: yes

Most visual editors are similar to each other. This has its advantages, because having figured out one of these programs, you will already feel confident if you later decide to try another. However, if you have never created websites before, even the simplest visual editor at first can raise a lot of questions, such as: "what needs to be done first?", "which program tools are the main ones, and which are auxiliary?" etc.

The WebSite X5 Evolution program implements a slightly different approach to creating a site, thanks to which many questions disappear by themselves. The application is built on the principle of a step-by-step wizard, so that a novice user can be sure that he has not missed anything important.

Although the wizard guides you through all the steps of creating a project, the user can optionally "jump" through some of the steps by selecting from the side menu the actions that he wants to perform at the moment. There are five stages in total.

The first one contains general settings. So, here the site name, author and language are entered, keywords are selected, the Favicon is loaded, the menu type is selected (horizontal or vertical), the appropriate template is selected (there are more than a hundred design options in the program library), the appearance of the top and bottom of the site pages is set.

At the second stage, it is proposed to create a site map, that is, to think over its structure. Using the "copy" and "paste" buttons on the toolbar, you can create new pages based on existing ones. Here you can determine which pages of the resource will be hidden, specify the refresh rate for each page.

Double-clicking on the page name will take you to the next stage of working on the site, and here you can already deal directly with its content. By default, the page is divided into four blocks, in each of which you can add an object: text, graphic file, slide show, table, flash animation, multimedia file, etc. If desired, the number of blocks per page can be increased or decreased. After placing an object on the page, you need to define its settings, for example, specify the path to the graphic file, type text, etc. All these operations will need to be done for each page.

At the fourth stage, WebSite X5 Evolution will offer you to specify some additional settings, for example, to define the appearance of the introductory page, set the parameters for displaying flash ads, add a blog and an RSS feed to the site.

Among the features offered, there is also such an element as the "Basket for e-commerce". Using it, you can quickly create your own online store. Going to its settings, you can quickly create product categories, define delivery conditions, select payment options, insert a license agreement, and customize the appearance of store elements.

Finally, the last step is to export the project. The finished site can be saved to your hard drive or immediately uploaded to an FTP server. In addition, the program makes it possible to save project files in order to transfer them to another computer. Note that the project being created can be saved at any stage in the program's own format.

Perhaps the only inconvenience when working with WebSite X5 Evolution is the inability to preview pages in the browser. If you want to see what the site will look like, you can use the "Test" function, but it takes some time to generate the project. In addition, the program generates pages in its own browser, created on the Internet Explorer engine.

⇡ KompoZer 0.7.10

  • developer: Fabien Cazenave
  • distribution size: 7.9 MB
  • distribution: free
  • Russian interface: yes

KompoZer is a free and open source visual web editor. The program is available not only for Windows, but also for Mac, as well as for Linux. The editor is based on the Gecko engine, which runs the well-known Firefox browser. This provides a number of advantages: firstly, the engine perfectly supports modern web standards such as XML, CSS and JavaScript. Second, the Gecko-based editor can be extended with plugins.

Perhaps the first add-on you want to install is the Russian localization package. It is installed in much the same way as plugins for Firefox are installed: in the Tools menu, select the Extensions command, and then specify the path to the downloaded localization file with the .xpi extension. After installing the plugin, you will need to restart the program, after which the interface will become Russian.

An FTP client is integrated into the program, and it can be used not only to download a finished project, but also to quickly edit the pages of a site already hosted on the server. By specifying your server login information, you can navigate the directory tree and select pages for editing. Their contents will be loaded in the KompoZer window, and they can be edited on the fly.

KompoZer allows you to work with multiple pages at the same time. Each of them opens on a separate tab, between which you can quickly switch. Each page has its own undo and redo history. By looking at the icon in the tab header, you can immediately determine if changes have been made to the content of the page that have not yet been saved.

Although KompoZer generates the web page code itself, you can review it and make some changes if necessary. At the bottom of each page, there are tabs that allow you to switch between the visual display of the page and the code display.

By default, the most commonly used tools are placed on the program toolbar: adding a hyperlink, inserting an image, tables, tools for creating web forms, etc. If desired, you can change the appearance of this panel (for example, by reducing the icons), as well as add some other tools to it.

In general, despite the fact that KompoZer is a visual web editor, it is designed for users who already have some experience in creating websites. You will not find ready-made templates and examples of navigation menus in it, but a powerful CSS editor is integrated into the program, there are tools for checking HTML code and spell checking.

⇡ BestAddress HTML Editor 17

  • Developer: Multimedia Australia
  • distribution size: 7.1 MB
  • distribution: shareware
  • Russian interface: no

When a user decides to study some area, for example, computer graphics, video editing or programming, he often asks more experienced comrades what program is better to start learning a new craft with. In some cases, indeed, it is better to use simple tools in the beginning, and then, having figured out their capabilities, move on to more advanced editors. As for BestAddress HTML Editor 2010 Professional, we can say that this program has every chance of becoming the first and last tool for a novice web developer.

Working in the visual construction mode of a web page is similar to working with a constructor - you can independently set the size and color of elements, place buttons, graphics, menus and other site components at your discretion. Convenient formatting, almost like in a text editor, can be used to control the position of any page elements. You won't find templates in BestAddress HTML Editor 2010 Professional, but you can download a web page located at the specified address. After opening the page in the program, you can then edit it.

The editor can automatically upload the project to the server - for this, the program uses the Digital FTP Access FTP client that comes with it.

BestAddress HTML Editor 2010 Professional also has professional coding tools. Beginners who want to understand the principles of working and writing HTML, CSS, Java and PHP code can refer to the documentation. It outlines the most important rules for writing code, such as assigning tags, examples of simple operations, etc. Simple and clear lessons give a brief idea of ​​the structure of HTML and bring the beginner "in the know".

⇡ Conclusion

The programs described in this review allow you to quickly create your site and place it on the Internet. It should be remembered that all these applications are only tools in the hands of the user. Whether the site will attract the attention of visitors, whether it will become an additional component of success in business, depends solely on the author's imagination and on his desire to improve what he has begun. And, of course, in order for the site to justify the hopes placed, your undertaking must be lucky, which is what we wish everyone!

Sometimes a good editor for PHP is very much missing, precisely in terms of comfortable working with code, something more serious than simple syntax highlighting. At the same time, ordinary editors are a dime a dozen, in which, unfortunately, the same syntax highlighting does not always work correctly.

I would like to have a normal implementation of IntelliSense, and not a "wooden" parody of it in the form of a predefined list of methods and language constants, "falling out" during work with or without reason in the form of a complete list. IntelliSense must “know” about all the classes you use, about their methods and variables, that is, it connected a file with the definition of its class via #include, and the editor immediately picks it up, suggesting information about all the “internals” of objects of this class.

It would also be nice to have hints while typing the name of the function in the form of a brief description of the function (received parameters, whether there are overloaded functions, etc.). This is especially lacking for self-written functions, in some typical editors I have seen such hints, but only for native PHP functions. Oh yes, it's also very convenient to quickly jump to the definition of a function from the place of its call. In general, I still want a lot of things, and I consider all these features only a fraction of the most necessary things in the coding process and by no means an excess ...

We can say that in this sense, my ideal is the MS Visual Studio + Visual Assist bundle, which I use when working with C # and C ++ (Visual Assist in this bundle is just like a lifeline). When once again you don’t go into other files to look at the accepted function parameters or the names of certain class members, this in any case contributes to the performance and “pleasantness” of the process. The absence of such an editor among its toolkit is very depressing, given the increasing (from version to version) object-oriented PHP.

And here it is!

Nevertheless, I found a fairly good editor for myself - . If you, like me, used ordinary editors that replace the standard "notepad" and also craved human IntelliSense, I advise you to definitely try it. It is also free (about the paid version below) and works on the basis of the Mozilla framework (XPFE), which makes it also multiplatform.

This editor is not ideal, it has a lot of good things, while, of course, it still has room for improvement. But, in general, in the first days of meeting him, I had no limit to joy 🙂

It is also worth noting the support for other languages ​​​​(Perl, Python, Ruby, Tcl), as well as JavaScript, CSS, HTML, XML and much more (judging by the list of files that he can open, he knows many more languages ​​​​and technologies, but not sure if IntelliSense works for all of them). I was pleasantly surprised by the support of many popular JavaScript frameworks (for this was by the way).

I probably have not yet had time to study all the functionality of Komodo Edit, but I would like to describe some points.

First of all, I customized the code highlighting color scheme for PHP ( Edit -> Preferences... -> Fonts and Colors), because I'm already used to the colors from .

The plugin also turned out to be a useful addition, which finds all TODOs in an open project or file and displays them in one list (similar to how it is implemented in VS). And a plugin that allows you to see in a single list all the classes and methods defined in the open file () for quick navigation through them.

In general, before using Komodo, it makes sense to study its settings by changing certain parameters for yourself. For example, I also redefined the hot key to go to the definition of functions (I did F12, as in Visual Studio 🙂).

In general, everything works quite well, "earth and sky" compared to coding in a regular editor.

It's a little inconvenient that in order to fully support IntelliSense, you must create a project file (you just need to save it to the root directory of the site). That is, if you open one file outside the scope of the Komodo project, all the includes written in it will not be processed in any way, and, accordingly, Komodo will not know anything about the functions and classes defined in the included files. But, in general, this little inconvenience can be experienced 🙂

On the other hand, creating a project file allows you to make finer project settings, which are saved and every time you open the project, Komodo will remember them. Through it, for example, you can specify additional directories so that Komodo, when working with your project, always has in mind the structure of classes and methods (for IntelliSense and various tips) implemented in files that are in the included directory, even if these files nor are they actually connected (via include or require) to the file being edited. You can also search or replace text in all project files. Also, Komodo remembers the bookmarks you made inside the code ( Ctrl+F2) for each file, this is very convenient.

It was a little unpleasantly surprising that Komodo Edit does not know anything about classes built into PHP (maybe I'm doing something wrong?). For example, if you need to use the mysqli class:

$mysqli = new mysqli(HOST, USER, PASS, MBASE); if (mysqli_connect_errno()) ( print "Connect failed: ".mysqli_connect_error(); exit(); ) $mysqli->query("INSERT......."); $mysqli->close();

When, after writing the word “$mysqli”, I start accessing the methods of this object (I write the “->” sign), Komodo Edit does not want to suggest anything about the query, close, etc. methods, and swears in the status bar that, they say , I didn’t see the definition of this class in my eyes ... At the same time, there are no problems with the functions built into PHP, for example, Komodo knows very well about the mysqli_* family of functions (the wrapper over which is the mysqli class). But, I hope this flaw will be corrected someday. If, for example, you work with the base through your wrapper class (or through something like PEAR), then there should be no problems with IntelliSense.

Once it happened to me that when editing a js file, Komodo did not understand which Java Script framework I was using. But this, fortunately, can always be corrected in its settings ( Edit -> Preferences... -> Code Intelligence).

There is a paid version of Komodo called Komodo IDE. As I understand it, the main difference from Komodo Edit is in the functions common to many IDEs. The Komodo IDE has built-in version control (SVN) tools and a code debugger.

By the way, Komodo Edit still has a primitive debugger that notifies you on the go about such minor errors as a forgotten semicolon at the end of a line, an unclosed bracket, etc. He underlines such errors with a red wavy line. In order for such debugging to work, you need to specify the path to the PHP executable file and php.ini in the program settings ( Edit -> Preferences… -> Languages ​​-> PHP).

As you can see, similar settings can be made for all other languages.

Afterword

Komodo Edit is now my everyday tool 🙂 Plus, for short edits of some little things in episodic cases, I continue to use an analogue of an advanced notepad - Notepad ++, that is, I use it for its true purpose.

Before Komodo Edit, I also tried an interesting Visual Studio plugin called VS.Php . It is built into Visual Studio and allows you to work with PHP in the same way as, for example, with C # (you can debug code, IntelliSense works, etc.). But somehow he was not particularly impressed, especially against the background of his paid. In addition, as I understand it, working in it, you can completely forget about Java Script support, etc. It is also interesting that IntelliSense for classes built into PHP does not work in it, just like in Komodo. Also this VS.Php conflicts with Visual Assist.

There are two more similar editors that I heard about, but somehow didn’t happen to try them (only IMHO and guesses based on “rumors”):

  • Zend Studio is paid, according to reviews it seems that this is something cumbersome and is applicable first of all in very large and complex projects, it is especially appropriate, perhaps if the project is created based on the Zend Framework.
  • Eclipse is free, but it scared away, most likely, with its “wrap”. As I understand it, you still need to be able to assemble it for yourself from various modules. In general, somehow there was no desire to figure out how to install and configure it (but at one time I still tried a little 😉), although, undoubtedly, someone may really like it.

***

If someone will advise any other editors with an eye to my "picky" tastes, I will be very grateful. It would also be interesting to hear about some additional interesting features of Komodo from those who already use it.

In general, down with primitive code highlighting with a lot of unnecessary functions! This is a “sore” stone in the garden of constantly appearing simple code editors that highlight among their “merits” a built-in file system explorer or something like a mini database editor / viewer (well, why is this needed if there are no most important things, namely for what the code editor is originally supposed to be used for), etc. etc. For some reason, almost every novice (although maybe not always a novice) programmer wants to “quickly” make his own “mega” editor, which often degenerates into “something painfully familiar again” ... obviously, this tradition from the Hello World! 😉

PHP is a great language for creating web pages. It is currently supported by most hosts and is the leading programming language for creating dynamic websites. The beginning of the creation of PHP is considered to be 1994, when Rasmus Lerdorf created a simple set of scripts for processing HTML documents ... Perhaps because at the time of creation the PHP handler was written in C, the syntaxes of the languages ​​​​are very similar ...

1st place. phpstorm

PhpStorm is a cross-platform PHP development environment. The program is a multifunctional and intelligent editor for PHP, HTML and JavaScript. There are many features of the program, of which I would like to note the possibility of analysis and coding on the fly, the error prevention function provides unsurpassed performance.

2nd place. Sublime Text

A simple, free, handy editor for various code. Of the pluses, it is impossible not to note the pleasant interface, ease of management, and flexible configuration. Also a definite plus is that this editor is multiplatform. I really liked the function of multiple selection and editing, other editors do not have this function. It works like this: you hold down Ctrl and after selecting lines of text, they are edited simultaneously. Also in this editor there is a function of hot keys for any action. There aren't many plugins yet.

3rd place. Komodo IDE

Komodo is a professional IDE for major web programming languages ​​including Python, PHP, Ruby, Perl, HTML, CSS, and JavaScript. You will enjoy this editor and develop faster using the full set of tools. Key features include code folding, multi-window editing, smart syntax checking, highlighting, powerful snippets and handy tool macros, and other productivity-enhancing features. The sleek interface frees up space and gives room for creativity.

4th place. Expression Studio

This is not just an application, it is a whole software package developed by the company Microsoft. This package includes: a visual editor, tools for interface design, graphic design, and many other tools.

5th place. PhpED

The program has many tools that are very useful in developing both in PHP and in other languages ​​that the editor supports. The built-in web server is used to debug web applications. You may spend a lot of time and effort setting it up at first, but it's worth it. Also, the minus of the program is that there is no distribution kit for MAC and Linux.

6th place. PHPEdit

In the arsenal of this editor, there is not only syntax highlighting, but also the function of auto-completion, code verification, and there is also a built-in debugger. It’s not good that there are no Russian-language textbooks yet, but you won’t be fed up with leadership. There are also no distributions for MAC and Linux.

7th place. dreamweaver

When using this program, you can view the design and code of the page at the same time, hints and auto-completion are also used. The search and replacement of characters is conveniently organized. On the official website of the program you will find many commercial and non-commercial plugins for this program.

8th place. phpDesigner

This code editor is specifically designed for PHP, of course, you can create and edit projects in other languages ​​with it, but this will be ineffective. Of the shortcomings, the lack of cross-platform is immediately evident, this editor is only available for Windows. Unlike other editors, you cannot change the font size in it (who knows, maybe your eyesight is bad, but most programmers have it). The program also lacks a convenient vertical selection. But despite all the shortcomings, phpDesigner has the best code highlighting, it is very well organized, in general, try it and find out.

9th place. PHP Studio 2010

The editor itself is a development environment for PHP. It allows you to encode faster using a large number of features such as built-in server, web browser and more. Like most editors, there is a syntax check, support for various encodings, support for several development languages.

10th place. RadPHP

RadPHP is aimed at those who don't have a lot of coding experience. Of the advantages, one cannot fail to note syntax highlighting, the presence of a built-in browser and debugger, the ability to create breakpoints, ease of use is immediately noticeable. There is technical support organized at the highest level. Of the shortcomings, it immediately rushes that there are no distributions for MAC and Linux.

Share with friends or save for yourself:

Loading...