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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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 ></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.