diff --git a/src/applications/dashboard/install/PhabricatorDashboardObjectInstallWorkflow.php b/src/applications/dashboard/install/PhabricatorDashboardObjectInstallWorkflow.php
index eb1be21954..27e1335f6e 100644
--- a/src/applications/dashboard/install/PhabricatorDashboardObjectInstallWorkflow.php
+++ b/src/applications/dashboard/install/PhabricatorDashboardObjectInstallWorkflow.php
@@ -1,99 +1,99 @@
 <?php
 
 abstract class PhabricatorDashboardObjectInstallWorkflow
   extends PhabricatorDashboardInstallWorkflow {
 
   abstract protected function newQuery();
   abstract protected function newConfirmDialog($object);
   abstract protected function newObjectSelectionForm($object);
 
   public function handleRequest(AphrontRequest $request) {
     $viewer = $this->getViewer();
 
     $target_identifier = null;
 
     $target_tokens = $request->getArr('target');
     if ($target_tokens) {
       $target_identifier = head($target_tokens);
     }
 
-    if (!strlen($target_identifier)) {
+    if (!phutil_nonempty_string($target_identifier)) {
       $target_identifier = $request->getStr('target');
     }
 
-    if (!strlen($target_identifier)) {
+    if (!phutil_nonempty_string($target_identifier)) {
       $target_identifier = $this->getMode();
     }
 
     $target = null;
-    if (strlen($target_identifier)) {
+    if (phutil_nonempty_string($target_identifier)) {
       $targets = array();
 
       if (ctype_digit($target_identifier)) {
         $targets = $this->newQuery()
           ->setViewer($viewer)
           ->withIDs(array((int)$target_identifier))
           ->execute();
       }
 
       if (!$targets) {
         $targets = $this->newQuery()
           ->setViewer($viewer)
           ->withPHIDs(array($target_identifier))
           ->execute();
       }
 
       if ($targets) {
         $target = head($targets);
       }
     }
 
     if ($target) {
       $target_phid = $target->getPHID();
     } else {
       $target_phid = null;
     }
 
     if ($target) {
       $can_edit = PhabricatorPolicyFilter::hasCapability(
         $viewer,
         $target,
         PhabricatorPolicyCapability::CAN_EDIT);
     } else {
       $can_edit = null;
     }
 
     if ($request->isFormPost() && $target && $can_edit) {
       if ($request->getBool('confirm')) {
         return $this->installDashboard($target, null);
       } else {
         return $this->newConfirmDialog($target)
           ->addHiddenInput('confirm', 1)
           ->addHiddenInput('target', $target_phid);
       }
     }
 
     $errors = array();
-    if (strlen($target_identifier)) {
+    if (phutil_nonempty_string($target_identifier)) {
       if (!$target) {
         $errors[] = pht('Choose a valid object.');
       } else if (!$can_edit) {
         $errors[] = pht(
           'You do not have permission to edit the selected object. '.
           'You can only install dashboards on objects you can edit.');
       }
     } else if ($request->getBool('pick')) {
       $errors[] = pht(
         'Choose an object to install this dashboard on.');
     }
 
     $form = $this->newObjectSelectionForm($target)
       ->addHiddenInput('pick', 1);
 
     return $this->newDialog()
       ->setTitle(pht('Add Dashboard to Project Menu'))
       ->setErrors($errors)
       ->appendForm($form)
       ->addSubmitButton(pht('Continue'));
   }
 }