PageSourceSearch

https://php-di.org/news/

html php-di.org collected 2026-10-02 05:15:37 UTC 25,346 bytes, 503 lines download raw bytes

1<!DOCTYPE html>
2<!--[if lt IE 7]>
3<html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
4<!--[if IE 7]>
5<html class="no-js lt-ie9 lt-ie8"> <![endif]-->
6<!--[if IE 8]>
7<html class="no-js lt-ie9"> <![endif]-->
8<!--[if gt IE 8]><!-->
9<html class="no-js"> <!--<![endif]-->
10<head>
11    <meta charset="utf-8">
12    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
13    <meta name="viewport" content="width=device-width, initial-scale=1">
14
15    <title>PHP-DI - The Dependency Injection Container for humans</title>
16    <meta name="description" content="PHP-DI is a Dependency Injection Container for PHP that intends to be practical and powerful.">
17
18    <link rel="canonical" href="https://php-di.org" />
19
20    <meta name="application-name" content="PHP-DI"/>
21    <link rel="apple-touch-icon-precomposed" sizes="144x144" href="https://php-di.org/img/apple-touch-icon-144x144.png" />
22    <link rel="apple-touch-icon-precomposed" sizes="152x152" href="https://php-di.org/img/apple-touch-icon-152x152.png" />
23    <link rel="icon" type="image/png" href="https://php-di.org/img/favicon-32x32.png" sizes="32x32" />
24    <link rel="icon" type="image/png" href="https://php-di.org/img/favicon-16x16.png" sizes="16x16" />
25    <meta name="msapplication-TileColor" content="#484949" />
26    <meta name="msapplication-TileImage" content="https://php-di.org/img/mstile-144x144.png" />
27
28            <link href="https://fonts.googleapis.com/css?family=Abel:400|Oswald:300,400,700" media="all" rel="stylesheet" type="text/css">
29        <link href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css" rel="stylesheet">
30        <link href="https://php-di.org/css/highlight.github.css" rel="stylesheet">
31        <link href="https://php-di.org/css/all.min.css" rel="stylesheet">
32    
33    
33<script async defer data-domain="php-di.org" src="https://plausible.io/js/plausible.js"></script>
33
34</head>
35<body>
36
37    <header>
38        <div class="navbar navbar-default navbar-fixed-top">
39            <div class="container">
40                <div class="navbar-header">
41                    <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#top-navigation">
42                        <span class="sr-only">Toggle navigation</span>
43                        <span class="icon-bar"></span>
44                        <span class="icon-bar"></span>
45                        <span class="icon-bar"></span>
46                    </button>
47                    <a class="navbar-brand" href="https://php-di.org/" title="Dependency injection container for PHP">PHP-DI</a>
48                </div>
49                <div class="navbar-form navbar-left hidden-xs hidden-sm">
50                    <input id="search-input" type="text" class="form-control" placeholder="Search...">
51                </div>
52                <div class="collapse navbar-collapse" id="top-navigation">
53                    <ul class="nav navbar-nav navbar-right">
54                        <li><a href="https://php-di.org/doc/getting-started.html" title="Getting started with PHP-DI">Getting started</a></li>
55                        <li><a href="https://php-di.org/doc/" title="PHP-DI documentation">Documentation</a></li>
56                        <li><a href="https://php-di.org/support.html" title="Enterprise support for PHP-DI">For Enterprise</a></li>
57                        <li><a href="https://php-di.org/news/" title="News about PHP-DI">News</a></li>
58                        <li><a href="https://php-di.org/change-log.html" title="PHP-DI's changelog">Changelog</a></li>
59                        <li><a class="github" href="https://github.com/PHP-DI/PHP-DI" title="PHP-DI on GitHub"><i class="fa fa-github"></i></a></li>
60                    </ul>
61                </div>
62            </div>
63        </div>
64    </header>
65
66    
67    <section class="container">
68        <div class="row">
69            <div class="col-md-9">
70
71                
72                    <article>
73
74                        <h1>Latest news</h1>
75
76                        <div class="article-extract">
77                            <h3>
78                                PHP-DI 7.0 released
79                            </h3>
80
81                            <p>
82                                I am very happy to announce that PHP-DI 7.0 has been released.
83                            </p>
84                            <a href="https://php-di.org/news/23-php-di-7-0-released.html" class="btn btn-default">
85                                Read More &gt;</a>
86                        </div>
87
88                        <div class="article-extract">
89                            <h3>
90                                PHP-DI 6.0 released
91                            </h3>
92
93                            <p>
94                                I am very happy to announce that PHP-DI 6.0 has been released.
95                            </p>
96                            <a href="https://php-di.org/news/22-php-di-6-0-released.html" class="btn btn-default">
97                                Read More &gt;</a>
98                        </div>
99
100                        <div class="article-extract">
101                            <h3>
102                                PHP-DI 6: turning into a compiled container for maximum performances
103                            </h3>
104
105                            <p>
106                                PHP-DI's motto is "The dependency injection container for humans".
107                            </p>
108                            <p>
109                                This is very important because it defines what PHP-DI tries to be: practical to use, consistent, predictable, with a configuration format that is easy to read and write and a great documentation.
110                            </p>
111                            <a href="https://php-di.org/news/21-php-di-6-compiled-container.html" class="btn btn-default">
112                                Read More &gt;</a>
113                        </div>
114
115                        <div class="article-extract">
116                            <h3>
117                                PHP-DI 5.4 released
118                            </h3>
119
120                            <p>
121                                I am happy to announce that PHP-DI version 5.4 has been released. Here is the list of changes in this new version.
122                            </p>
123                            <a href="https://php-di.org/news/20-php-di-5-4-released.html" class="btn btn-default">
124                                Read More &gt;</a>
125                        </div>
126
127                        <div class="article-extract">
128                            <h3>
129                                PHP-DI 5.3 released
130                            </h3>
131
132                            <p>
133                                I am happy to announce that PHP-DI version 5.3 has been released. The changes in this new version are:
134                            </p>
135                            <a href="https://php-di.org/news/19-php-di-5-3-released.html" class="btn btn-default">
136                                Read More &gt;</a>
137                        </div>
138
139                        <div class="article-extract">
140                            <h3>
141                                Introducing the PHP-DI bridge for Slim
142                            </h3>
143
144                            <p>
145                                Slim 3 was released 3 months ago and it was significant. It is one of the first frameworks to integrate the latest standards and concepts in its core:
146                            </p>
147                            <a href="https://php-di.org/news/18-slim-bridge-released.html" class="btn btn-default">
148                                Read More &gt;</a>
149                        </div>
150
151                        <div class="article-extract">
152                            <h3>
153                                PHP-DI 5.2 released
154                            </h3>
155
156                            <p>
157                                I am happy to announce that PHP-DI version 5.2 has been released. This new version comes with:
158                            </p>
159                            <a href="https://php-di.org/news/17-php-di-5-2-released.html" class="btn btn-default">
160                                Read More &gt;</a>
161                        </div>
162
163                        <div class="article-extract">
164                            <h3>
165                                PHP-DI 5.1 released
166                            </h3>
167
168                            <p>
169                                I am happy to announce that PHP-DI version 5.1 has been released. This new version comes with:
170                            </p>
171                            <a href="https://php-di.org/news/16-php-di-5-1-released.html" class="btn btn-default">
172                                Read More &gt;</a>
173                        </div>
174
175                        <div class="article-extract">
176                            <h3>
177                                PHP-DI 5.0 released
178                            </h3>
179
180                            <p>
181                                I am very excited to announce that, after 8 months of work, PHP-DI 5.0 is released.
182                            </p>
183                            <p>
184                                Note: If you have never heard of PHP-DI before, I recommend you to visit <a href="https://php-di.org/">the home page</a> to get an overview of what PHP-DI can do for you.
185                            </p>
186                            <a href="https://php-di.org/news/15-php-di-5-0-released.html" class="btn btn-default">
187                                Read More &gt;</a>
188                        </div>
189
190                        <div class="article-extract">
191                            <h3>
192                                Syntactic sugar in PHP-DI 5
193                            </h3>
194
195                            <p>
196                                It's been quite some time since there was a bit of news here. The reason is that a lot of work has been done for PHP-DI 5! It is not yet ready, but it is coming along great!
197                            </p>
198                            <p>
199                                I am not going to list everything that will be included in this next major version today. For now I'll simply give you a glimpse of the syntactic sugar that it will bring.
200                            </p>
201                            <a href="https://php-di.org/news/14-php-di-5-syntaxic-sugar.html" class="btn btn-default">
202                                Read More &gt;</a>
203                        </div>
204
205                        <div class="article-extract">
206                            <h3>
207                                PHP-DI 4.4 released
208                            </h3>
209
210                            <p>
211                                I am happy to announce that PHP-DI version 4.4 has been released.
212                                This version contains mainly improvements to the <code>Container::call()</code>
212 feature, and contains no BC-break.
213                            </p>
214                            <a href="https://php-di.org/news/13-php-di-4-4-released.html" class="btn btn-default">
215                                Read More &gt;</a>
216                        </div>
217
218                        <div class="article-extract">
219                            <h3>
220                                PHP 5.6 is out and PHP-DI just got better
221                            </h3>
222
223                            <p>
224                                PHP 5.6 has been released a month ago and PHP-DI just got better because of it!
225                            </p>
226                            <p>
227                                As explained 9 months ago when I introduced the new definition format for PHP-DI 4,
228                                that format has been thought for the future.
229                            </p>
230                            <a href="https://php-di.org/news/12-php-di-is-better-with-php-5-6.html" class="btn btn-default">
231                                Read More &gt;</a>
232                        </div>
233
234                        <div class="article-extract">
235                            <h3>
236                                PHP-DI 4.3 released
237                            </h3>
238
239                            <p>
240                                I am happy to announce that PHP-DI version 4.3 has been released.
241                                This version contains features that have all been
242                                implemented by contributors other than me, this is very encouraging :)
243                                This is also the quickest release, since 4.2 was released only 14 days ago.
244                            </p>
245                            <p>
246                                It comes without any BC break, and with a new main feature: <code>DI\env()</code>
247                                to import <strong>environment variables</strong>.
248                            </p>
249                            <a href="https://php-di.org/news/11-php-di-4-3-released.html" class="btn btn-default">
250                                Read More &gt;</a>
251                        </div>
252
253                        <div class="article-extract">
254                            <h3>
255                                PHP-DI 4.2 released
256                            </h3>
257
258                            <p>
259                                I am happy to announce that PHP-DI version 4.2 has been released.
260                            </p>
261                            <a href="https://php-di.org/news/10-php-di-4-2-released.html" class="btn btn-default">
262                                Read More &gt;</a>
263                        </div>
264
265                        <div class="article-extract">
266                            <h3>
267                                PHP-DI 4.1 released
268                            </h3>
269
270                            <p>
271                                I am happy to announce that PHP-DI version 4.1 has been released.
272                                This version was focused on stability and documentation improvements,
273                                with full backward compatibility.
274                            </p>
275                            <a href="https://php-di.org/news/09-php-di-4-1-released.html" class="btn btn-default">
276                                Read More &gt;</a>
277                        </div>
278
279                        <div class="article-extract">
280                            <h3>
281                                10.000 installs!
282                            </h3>
283
284                            <p>
285                                PHP-DI just reached 200 stars on GitHub and 10 000 installs through
286                                <a href="https://packagist.org/packages/mnapoli/php-di">Packagist</a>!
287                            </p>
288                            <a href="https://php-di.org/news/08-10000-installs.html" class="btn btn-default">
289                                Read More &gt;</a>
290                        </div>
291
292                        <div class="article-extract">
293                            <h3>
294                                PHP-DI 4.0 released
295                            </h3>
296
297                            <p>
298                                I am extremely happy to announce that, after 4 months of work and more than 150 commits,
299                                PHP-DI version 4.0 has been released!
300                                This is a new major release, and it delivers. As indicated by "major release",
301                                it comes with BC breaks, but this is for the better.
302                            </p>
303                            <a href="https://php-di.org/news/07-php-di-4-0-released.html" class="btn btn-default">
304                                Read More &gt;</a>
305                        </div>
306
307                        <div class="article-extract">
308                            <h3>
309                                What will change in PHP-DI 4: the new definition format
310                            </h3>
311
312                            <p>
313                                In PHP-DI 4, the definition format will change.
314                                Autowiring and Annotations are still there, but the YAML
315                                and PHP array definitions have disappeared. Let's see why.
316                            </p>
317                            <a href="https://php-di.org/news/06-php-di-4-0-new-definitions.html" class="btn btn-default">
318                                Read More &gt;</a>
319                        </div>
320
321                    </article>
322
323                
324            </div>
325
326            <div class="col-md-3">
327                <h3>
328                    All posts
329                </h3>
330
331                <ul class="all-posts list-unstyled">
332                    <li>
333                        <a href="https://php-di.org/news/23-php-di-7-0-released.html">PHP-DI 7.0 released</a>
334                    </li>
335                    <li>
336                        <a href="https://php-di.org/news/22-php-di-6-0-released.html">PHP-DI 6.0 released</a>
337                    </li>
338                    <li>
339                        <a href="https://php-di.org/news/21-php-di-6-compiled-container.html">PHP-DI 6: turning into a compiled container for maximum performances</a>
340                    </li>
341                    <li>
342                        <a href="https://php-di.org/news/20-php-di-5-4-released.html">PHP-DI 5.4 released</a>
343                    </li>
344                    <li>
345                        <a href="https://php-di.org/news/19-php-di-5-3-released.html">PHP-DI 5.3 released</a>
346                    </li>
347                    <li>
348                        <a href="https://php-di.org/news/18-slim-bridge-released.html">Introducing the PHP-DI bridge for Slim</a>
349                    </li>
350                    <li>
351                        <a href="https://php-di.org/news/17-php-di-5-2-released.html">PHP-DI 5.2 released</a>
352                    </li>
353                    <li>
354                        <a href="https://php-di.org/news/16-php-di-5-1-released.html">PHP-DI 5.1 released</a>
355                    </li>
356                    <li>
357                        <a href="https://php-di.org/news/15-php-di-5-0-released.html">PHP-DI 5.0 released</a>
358                    </li>
359                    <li>
360                        <a href="https://php-di.org/news/14-php-di-5-syntaxic-sugar.html">Syntactic sugar in PHP-DI 5</a>
361                    </li>
362                    <li>
363                        <a href="https://php-di.org/news/13-php-di-4-4-released.html">PHP-DI 4.4 released</a>
364                    </li>
365                    <li>
366                        <a href="https://php-di.org/news/12-php-di-is-better-with-php-5-6.html">PHP 5.6 is out and PHP-DI just got better</a>
367                    </li>
368                    <li>
369                        <a href="https://php-di.org/news/11-php-di-4-3-released.html">PHP-DI 4.3 released</a>
370                    </li>
371                    <li>
372                        <a href="https://php-di.org/news/10-php-di-4-2-released.html">PHP-DI 4.2 released</a>
373                    </li>
374                    <li>
375                        <a href="https://php-di.org/news/09-php-di-4-1-released.html">PHP-DI 4.1 released</a>
376                    </li>
377                    <li>
378                        <a href="https://php-di.org/news/08-10000-installs.html">10.000 installs!</a>
379                    </li>
380                    <li>
381                        <a href="https://php-di.org/news/07-php-di-4-0-released.html">PHP-DI 4.0 released</a>
382                    </li>
383                    <li>
384                        <a href="https://php-di.org/news/06-php-di-4-0-new-definitions.html">What will change in PHP-DI 4: the new definition format</a>
385                    </li>
386                    <li>
387                        <a href="https://php-di.org/news/05-php-di-3-5.html">PHP-DI 3.5 released</a>
388                    </li>
389                    <li>
390                        <a href="https://php-di.org/news/04-php-di-3-4.html">PHP-DI 3.4 released</a>
391                    </li>
392                    <li>
393                        <a href="https://php-di.org/news/03-php-di-3-3.html">PHP-DI 3.3 released</a>
394                    </li>
395                    <li>
396                        <a href="https://php-di.org/news/02-php-di-3-2.html">PHP-DI 3.2 released</a>
397                    </li>
398                </ul>
399            </div>
400
401        </div>
402    </section>
403
404
405            <footer>
406            <div class='container'>
407                                    <p>
408                        A question? Unsatisfied with the documentation?
409                        <a href="https://github.com/PHP-DI/PHP-DI/issues/new">Open an issue</a>
410                        or chat on
411                        <a href="https://gitter.im/PHP-DI/PHP-DI" title="PHP-DI chat room">Gitter</a> or
412                        <a href="https://twitter.com/phpdi" title="PHP-DI on Twitter">Twitter</a>.
413                    </p>
414                                <p>
415                    <a href="https://twitter.com/share" class="twitter-share-button" data-related="PHPDI" data-dnt="true">Tweet</a>
416                    
416<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script>
416
417                </p>
418                <p>
419                    By <a href="https://mnapoli.fr/" title="Software consulting and PHP news">Matthieu Napoli</a>
420                    and <a href="https://github.com/PHP-DI/PHP-DI/graphs/contributors" title="PHP-DI contributors">contributors</a>
421                    |
422                    Website generated with
423                    <a href="http://couscous.io" title="Static website generator for software documentation">Couscous</a>.
424                </p>
425                <p>
426                    Want to support my work? Check out
427                    <a href="https://serverless-visually-explained.com/?ref=php-di" title="Serverless course">Serverless Visually Explained</a>.
428                </p>
429            </div>
430        </footer>
431    
432            
432<script src="https://php-di.org/bower_components/jquery/dist/jquery.min.js"></script>
432
433        
433<script src="https://php-di.org/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
433
434        
434<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/8.5/highlight.min.js"></script>
434
435
436        
436<script>
437            $(function() {
438                hljs.initHighlightingOnLoad();
439
440                // Add anchors to headers
441                $('article h2, article h3, article h4, article h5').each(function () {
442                    var url = document.URL.replace(/#.*$/, "") + '#' + $(this).attr('id');
443                    $(this).append(' <a class="anchor" href="' + url + '">#</a>');
444                });
445            });
446        </script>
446
447    
448    
448<script>
449        var _gaq = _gaq || [];
450        _gaq.push(['_setAccount', 'UA-15584647-13']);
451        _gaq.push(['_trackPageview']);
452        (function() {
453            var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
454            ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
455            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
456        })();
457    </script>
457
458
459    <!-- Gitter -->
460    
460<script>
461        ((window.gitter = {}).chat = {}).options = {
462            room: 'PHP-DI/PHP-DI'
463        };
464    </script>
464
465    
465<script src="https://sidecar.gitter.im/dist/sidecar.v1.js" async defer></script>
465
466
467    
467<script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script>
467
468    
468<script type="text/javascript">
469        $(function () {
470            var search = docsearch({
471                apiKey: 'ef6af24cbacae1f85d3c44741df49167',
472                indexName: 'php-di',
473                inputSelector: '#search-input'
474            });
475            var delay = (function () {
476                var timer = 0;
477                return function (callback, ms) {
478                    clearTimeout(timer);
479                    timer = setTimeout(callback, ms);
480                };
481            })();
482            search.autocomplete.on('autocomplete:selected', function (e, suggestion) {
483                var articleTitle = suggestion.subcategory;
484                // Strip HTML tags
485                var div = document.createElement("div");
486                div.innerHTML = articleTitle;
487                articleTitle = div.textContent || div.innerText || "";
488                _gaq.push(['_trackEvent', 'search', 'click', articleTitle]);
489            });
490            $('#search-input').bind('input', function () {
491                var search = $(this).val();
492                if (search.length < 3) {
493                    return;
494                }
495                delay(function () {
496                    _gaq.push(['_trackPageview', '/search?q=' + search]);
497                }, 600);
498            });
499        });
500    </script>
500
501
502</body>
503</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.