Fix PHP 8.1 "strlen(null)" exception rendering Conpherence search results

Summary:
`strlen()` was used in Phabricator to check if a generic value is a non-empty string.
This behavior is deprecated since PHP 8.1. Phorge adopts `phutil_nonempty_string()` as a replacement.

Note: this may highlight other absurd input values that might be worth correcting
instead of just ignoring. If phutil_nonempty_string() throws an exception in your
instance, report it to Phorge to evaluate and fix that specific corner case.

```
ERROR 8192: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [/var/www/html/phorge/phorge/src/applications/conpherence/query/ConpherenceThreadSearchEngine.php:154]
```

See also similar rPe65ac7b8800d3397abfced7824a8d316ec573d8f

Closes T15818

Test Plan: Go to http://phorge.localhost/conpherence/search/query/all/

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15818

Differential Revision: https://we.phorge.it/D25629
这个提交包含在:
Andre Klapper 2024-05-09 13:23:13 +02:00
父节点 5b90567f64
当前提交 61c953268e

查看文件

@ -151,7 +151,7 @@ final class ConpherenceThreadSearchEngine
$icon = id(new PHUIIconView())
->setIcon($icon_name);
if (!strlen($fulltext)) {
if (!phutil_nonempty_string($fulltext)) {
$item = id(new PHUIObjectItemView())
->setObjectName($conpherence->getMonogram())
->setHeader($title)